#include<iostream>
#include<cstdio>
using namespace std;
int t, k, wsk=1, suma=0;
int wyklad[50];
int main()
{
scanf("%d", &t);
for(int nr=1;nr<=t;nr++)
{
scanf("%d", &k);
while(k>1)
{
if(k%2==0)
{
k/=2;
wyklad[wsk]++;
suma+=2;
}
else
{
k--;
wsk++;
suma++;
}
}
if(suma>100)
{
printf("NIE\n");
continue;
}
for(int i=1;i<=wsk;i++)
{
for(int j=1;j<=wyklad[i];j++)
{
if((i==wsk)&&(j==wyklad[wsk]))printf("(1+1)");
else printf("(1+1)*");
}
if(i!=wsk)printf("(1+");
}
for(int i=1;i<wsk;i++)printf(")");
for(int i=1;i<=wsk;i++)wyklad[i]=0;
wsk=1;
suma=0;
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 | #include<iostream> #include<cstdio> using namespace std; int t, k, wsk=1, suma=0; int wyklad[50]; int main() { scanf("%d", &t); for(int nr=1;nr<=t;nr++) { scanf("%d", &k); while(k>1) { if(k%2==0) { k/=2; wyklad[wsk]++; suma+=2; } else { k--; wsk++; suma++; } } if(suma>100) { printf("NIE\n"); continue; } for(int i=1;i<=wsk;i++) { for(int j=1;j<=wyklad[i];j++) { if((i==wsk)&&(j==wyklad[wsk]))printf("(1+1)"); else printf("(1+1)*"); } if(i!=wsk)printf("(1+"); } for(int i=1;i<wsk;i++)printf(")"); for(int i=1;i<=wsk;i++)wyklad[i]=0; wsk=1; suma=0; printf("\n"); } return 0; } |
English