#include <iostream> using namespace std; string constructString(int x) { if(x == 1) return "1"; else if (x == 2) return "1+1"; else if (x == 3) return "1+1+1"; else if (x == 4) return "1+1+1+1"; else if (x % 2 == 0) { return "(1+1)*(" + constructString(x/2) + ")"; } else { return "1+(1+1)*(" + constructString(x/2) + ")"; } } int main() { int t; cin>>t; while(t--) { int n; cin>>n; cout<<constructString(n)<<endl; } }
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 | #include <iostream> using namespace std; string constructString(int x) { if(x == 1) return "1"; else if (x == 2) return "1+1"; else if (x == 3) return "1+1+1"; else if (x == 4) return "1+1+1+1"; else if (x % 2 == 0) { return "(1+1)*(" + constructString(x/2) + ")"; } else { return "1+(1+1)*(" + constructString(x/2) + ")"; } } int main() { int t; cin>>t; while(t--) { int n; cin>>n; cout<<constructString(n)<<endl; } } |