Run ID | 作者 | 问题 | 语言 | 测评结果 | 分数 | 时间 | 内存 | 代码长度 | 提交时间 |
---|---|---|---|---|---|---|---|---|---|
169859 | B班陈乐辰 | 幂次方 | C++ | 通过 | 100 | 0 MS | 248 KB | 759 | 2024-08-20 18:26:08 |
#include <iostream> using namespace std; void mi(int n) { int b[32]; int len = 0; while (n > 0) { b[len++] = n % 2; n = n / 2; } for (int i = len - 1; i >= 0; i--) { if (b[i] == 1) { if (i != len - 1) { cout << "+"; } if (i == 0) { cout << "2(0)"; } else if (i == 1) { cout << "2"; } else { cout << "2("; mi(i); cout << ")"; } } } } int main() { int n; cin >> n; mi(n); return 0; }