#include <cstdio> using namespace std; int t; long long k; char tab[400]; int f; int s; int n; int main(){ scanf("%d",&t); for (int i=t;i>0;i--) { scanf("%lld",&k); f=0; s=0; n=0; while (k>2&&s<=100) { if (k%2==0) { tab[f]='('; tab[f+1]='1'; tab[f+2]='+'; tab[f+3]='1'; tab[f+4]=')'; tab[f+5]='*'; tab[f+6]='('; n++; s=s+2; f=f+7; k=k/2; } else { tab[f]='1'; tab[f+1]='+'; s++; f=f+2; k=(k-1); } } if (s>99) { printf("NIE"); } else { for (int j=0;j<f;j++) printf("%c",tab[j]); if (k==2) printf("1+1"); else printf("1"); for (int j=n;j>0;j--) printf(")"); } printf("\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 52 53 54 55 56 57 58 59 60 61 62 63 | #include <cstdio> using namespace std; int t; long long k; char tab[400]; int f; int s; int n; int main(){ scanf("%d",&t); for (int i=t;i>0;i--) { scanf("%lld",&k); f=0; s=0; n=0; while (k>2&&s<=100) { if (k%2==0) { tab[f]='('; tab[f+1]='1'; tab[f+2]='+'; tab[f+3]='1'; tab[f+4]=')'; tab[f+5]='*'; tab[f+6]='('; n++; s=s+2; f=f+7; k=k/2; } else { tab[f]='1'; tab[f+1]='+'; s++; f=f+2; k=(k-1); } } if (s>99) { printf("NIE"); } else { for (int j=0;j<f;j++) printf("%c",tab[j]); if (k==2) printf("1+1"); else printf("1"); for (int j=n;j>0;j--) printf(")"); } printf("\n"); } return 0; } |