#include <bits/stdc++.h> using namespace std; int main(){ int n, t, nawiasy; char last; scanf("%d", &t); for (int i=0; i<t; i++) { nawiasy=0; scanf("%d", &n); if (n==1) { printf("1\n"); continue; } if (n==2) { printf("1+1\n"); continue; } if (n%2==0) { printf("(1+1)"); last=')'; n/=2; } else if (n%2==1) { printf("1+"); last='+'; n--; } while (n>2) { if (n%2==0) { if (last=='+') printf("(1+1)"); else printf("*(1+1)"); last=')'; n/=2; } else { printf("*(1+"); last='+'; n--; nawiasy++; } } if (last=='+') printf("(1+1)"); else printf("*(1+1)"); for (int j=0; j<nawiasy; j++) printf(")"); printf("\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 48 49 50 51 52 53 54 55 | #include <bits/stdc++.h> using namespace std; int main(){ int n, t, nawiasy; char last; scanf("%d", &t); for (int i=0; i<t; i++) { nawiasy=0; scanf("%d", &n); if (n==1) { printf("1\n"); continue; } if (n==2) { printf("1+1\n"); continue; } if (n%2==0) { printf("(1+1)"); last=')'; n/=2; } else if (n%2==1) { printf("1+"); last='+'; n--; } while (n>2) { if (n%2==0) { if (last=='+') printf("(1+1)"); else printf("*(1+1)"); last=')'; n/=2; } else { printf("*(1+"); last='+'; n--; nawiasy++; } } if (last=='+') printf("(1+1)"); else printf("*(1+1)"); for (int j=0; j<nawiasy; j++) printf(")"); printf("\n"); } } |