萌新求助

P1010 [NOIP1998 普及组] 幂次方

```cpp #include<bits/stdc++.h> using namespace std; int a[16]; void f(int x) { for(int i=15;i>=0;i--) { if(x>=a[i]) { x-=a[i]; if(i==0) printf("2(0)"); else if(i==1) printf("2"); else { printf("2("); f(i); printf(")"); } if(x!=0) printf("+"); } } } int main() { a[0]=1; for(int i=1;i<=15;i++) a[i]=a[i-1]*2; int n; cin >> n; f(n); return 0; } ```
by soloer @ 2021-07-26 14:37:12


|