#include <iostream> #include <bitset> using namespace std; int main() { ios_base::sync_with_stdio(0); int t; cin>>t; while(t--) { int a; cin>>a; bitset<32> pom=a; int start=31; if(a==1) { cout<<"1\n"; continue; } while(1) { if(pom[start]) break; start--; } //cout<<start; int ile=pom.count(); for(int i=0;i<ile-2;i++) { cout<<"("; } if(!pom[0]&&ile>1) cout<<"("; cout<<"(1+1)"; for(int i=start-1;i>=0;i--) { if(pom[i]&&i!=0) cout<<"+1)"; if(pom[i]&&i==0) cout<<"+1"; if(i!=0) cout<<"*(1+1)"; } cout<<"\n"; } }
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 | #include <iostream> #include <bitset> using namespace std; int main() { ios_base::sync_with_stdio(0); int t; cin>>t; while(t--) { int a; cin>>a; bitset<32> pom=a; int start=31; if(a==1) { cout<<"1\n"; continue; } while(1) { if(pom[start]) break; start--; } //cout<<start; int ile=pom.count(); for(int i=0;i<ile-2;i++) { cout<<"("; } if(!pom[0]&&ile>1) cout<<"("; cout<<"(1+1)"; for(int i=start-1;i>=0;i--) { if(pom[i]&&i!=0) cout<<"+1)"; if(pom[i]&&i==0) cout<<"+1"; if(i!=0) cout<<"*(1+1)"; } cout<<"\n"; } } |