我看题解写了一段代码,结果全TLE!
wrong code:
#include<iostream>
#include<cstring>
using namespace std;
int a;
int dfs(int n){
int i,j=1;
if(n==0){
return 0;
}
for(i=1;i<=20;i++){
j*=2;
if(j>n){
j/=2;
i--;
break;
}
}
if(i==1)cout <<"2";
if(i==0)cout <<"2(0)";
if(i>1){
cout <<"2(";
dfs(i);
cout <<")";
}
if(n-j>0){
cout <<"+";
dfs(n-j);
}
}
int main(){
cin>>a;
dfs(a);
}
求大神帮助!