题目:
代码:
#include<bits/stdc++.h>
using namespace std;
int n;
void dfs(int s){
for(int i=log2(s)+1;i>=0;i--){
if(s>=pow(2,i)) {
if(i==2){
cout<<"2(2)";
}
else if(i==1){
cout<<"2";
}
else if(i==0){
cout<<"2(0)";
}
else{
cout<<"2(";
dfs(log2(s));
cout<<")";
}
s-=pow(2,i);
if(s!=0){
cout<<"+";
}
}
}
}
int main()
{
cin>>n;
dfs(n);
return 0;
}