#include<bits/stdc++.h>
#define LL long long
using namespace std;
int n,m,k,i,j,wyn,x;
string s;
void rozk(int x)
{
// printf("(");
int il2=x&-x;
x/=il2;
int il3=0;
while(x%3==0)
{
x/=3;
il3++;
}
if(il2>1)
{
// printf("(1+1)");
s+="(1+1)";
wyn+=2;
for(int j=2;j<il2;j=j*2)
{
// printf("*(1+1)");
s+="*(1+1)";
wyn+=2;
}
//printf("*");
}
if(il2>1&&(il3>0||x>1))
{
s+="*";
// printf("*");
}
if(il3>0)
{
// printf("(1+1+1)");
wyn+=3;
s+="(1+1+1)";
for(int j=2;j<=il3;j++)
{
//printf("*(1+1+1)");
s+="*(1+1+1)";
wyn+=3;
}
}
if(x!=1)
{
x--;
//printf("(1+");
wyn++;
s+="(1+";
rozk(x);
//printf(")");
s+=")";
}
// printf(")");
}
int main()
{
scanf("%d",&n);
for(i=1;i<=n;i++)
{
wyn=0;
s="";
scanf("%d",&x);
if(x==1)printf("1");
else
rozk(x);
if(wyn>100)printf("NIE");
else
{
printf("%s",s.c_str());
}
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 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 | #include<bits/stdc++.h> #define LL long long using namespace std; int n,m,k,i,j,wyn,x; string s; void rozk(int x) { // printf("("); int il2=x&-x; x/=il2; int il3=0; while(x%3==0) { x/=3; il3++; } if(il2>1) { // printf("(1+1)"); s+="(1+1)"; wyn+=2; for(int j=2;j<il2;j=j*2) { // printf("*(1+1)"); s+="*(1+1)"; wyn+=2; } //printf("*"); } if(il2>1&&(il3>0||x>1)) { s+="*"; // printf("*"); } if(il3>0) { // printf("(1+1+1)"); wyn+=3; s+="(1+1+1)"; for(int j=2;j<=il3;j++) { //printf("*(1+1+1)"); s+="*(1+1+1)"; wyn+=3; } } if(x!=1) { x--; //printf("(1+"); wyn++; s+="(1+"; rozk(x); //printf(")"); s+=")"; } // printf(")"); } int main() { scanf("%d",&n); for(i=1;i<=n;i++) { wyn=0; s=""; scanf("%d",&x); if(x==1)printf("1"); else rozk(x); if(wyn>100)printf("NIE"); else { printf("%s",s.c_str()); } printf("\n"); } } |
English