题目求助

灌水区

```c #include<iostream> #include<cmath> using namespace std; int a; void fff(int x) { for(int i=14;i>=0;i--) { if(pow(2,i)<=x){ if(i==1) cout<<"2"; else if(i==0) cout<<"2(0)"; else{ cout<<"2("; fff(i); cout<<")"; } x-=pow(2,i); if(x!=0) cout<<"+"; } } } int main() { cin>>a; fff(a); return 0; } ```
by Shui_mo @ 2024-04-27 20:57:33


自己看了一遍发现我们老师这篇题解是抄的
by Shui_mo @ 2024-04-27 20:58:17


@[Shui_mo](/user/1267879) 我是问我的哪里错了?不是要AC他,如果超题解的话,谁不是红名?
by xpg007 @ 2024-04-27 21:01:59


@[xpg007](/user/1024680) ~~您思路很奇怪~~ ``` 其实可以 递归 (x) { int t = log (x) // 当前最多是2的t次方 如果 t==1 输出 2 // 当前是2的1次方 如果 t==0 输出 2(0) // 当前是1(2的0次方) 否则 // 都不是 输出 2( 递归 (t) // 递归分解 输出 ) } ``` 我觉得您的dfs没有起到该有的作用
by a_little_carrot @ 2024-04-27 21:18:29


|