#include <iostream> #include <cstdio> using namespace std; int tp,k,licznik,t[105][17005],n,o1; int main() { scanf("%d",&tp); for(int i=1;i<=tp;i++) { scanf("%d",&k); if(k==1) printf("1"); else { licznik=0; o1=0; n=k; while(k>1) { if(k%2==1) { k=k-1; licznik=licznik+1; } else { k=k/2; licznik=licznik+1; } } for(int j=licznik;j>=1;j--) { if(n%2==1) { n=n-1; t[i][j]=1; o1=o1+1; } else { n=n/2; t[i][j]=2; } } for(int j=1;j<=o1;j++) { printf("("); } for(int j=1;j<=licznik;j++) { if(t[i][j]==1) { printf("+1)"); if(t[i][j+1]==2) { printf("*"); } if(j==licznik) printf("\n"); } if(t[i][j]==2) { printf("(1+1)"); if(t[i][j+1]==2) { printf("*"); } if(j==licznik) printf("\n"); } } } } system("PAUSE"); 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 64 65 66 67 68 69 70 71 72 73 | #include <iostream> #include <cstdio> using namespace std; int tp,k,licznik,t[105][17005],n,o1; int main() { scanf("%d",&tp); for(int i=1;i<=tp;i++) { scanf("%d",&k); if(k==1) printf("1"); else { licznik=0; o1=0; n=k; while(k>1) { if(k%2==1) { k=k-1; licznik=licznik+1; } else { k=k/2; licznik=licznik+1; } } for(int j=licznik;j>=1;j--) { if(n%2==1) { n=n-1; t[i][j]=1; o1=o1+1; } else { n=n/2; t[i][j]=2; } } for(int j=1;j<=o1;j++) { printf("("); } for(int j=1;j<=licznik;j++) { if(t[i][j]==1) { printf("+1)"); if(t[i][j+1]==2) { printf("*"); } if(j==licznik) printf("\n"); } if(t[i][j]==2) { printf("(1+1)"); if(t[i][j+1]==2) { printf("*"); } if(j==licznik) printf("\n"); } } } } system("PAUSE"); return 0; } |