#include <bits/stdc++.h>
using namespace std;
string ans;
int t, num;
int main(){
ios_base::sync_with_stdio(0);
cin.tie(0);
cin>>t;
for (int i=0;i<t;i++){
cin>>num;
if(num==1){
cout<<1<<'\n';
}
else{
int w, w0=0;
for(w=30;w>0;w--){
if ((num>>w)%2==1){
if (w0==0)
w0=w;
}
}
w=w0;
if(w==1){
if(num%2==0){
cout<<"(1+1)*1"<<'\n';
}
else{
cout<<"(1+1)*1+1"<<'\n';
}
}
else{
if ((num>>(w-1))%2==1){
ans="((1+1)+1)";
}
else{
ans="(1+1)";
}
for(int j=w-1;j>=1;j--){
ans="((1+1)*"+ans+")";
if ((num>>(j-1))%2==1){
ans="(1+"+ans+")";
}
}
cout<<ans<<'\n';
}
}
}
return 0;
}
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 | #include <bits/stdc++.h> using namespace std; string ans; int t, num; int main(){ ios_base::sync_with_stdio(0); cin.tie(0); cin>>t; for (int i=0;i<t;i++){ cin>>num; if(num==1){ cout<<1<<'\n'; } else{ int w, w0=0; for(w=30;w>0;w--){ if ((num>>w)%2==1){ if (w0==0) w0=w; } } w=w0; if(w==1){ if(num%2==0){ cout<<"(1+1)*1"<<'\n'; } else{ cout<<"(1+1)*1+1"<<'\n'; } } else{ if ((num>>(w-1))%2==1){ ans="((1+1)+1)"; } else{ ans="(1+1)"; } for(int j=w-1;j>=1;j--){ ans="((1+1)*"+ans+")"; if ((num>>(j-1))%2==1){ ans="(1+"+ans+")"; } } cout<<ans<<'\n'; } } } return 0; } |
English