#include <stdio.h>
char jedynkowo[50000];
int ileJedynek;
void piszJedynki(int x){
int i;
for(i = 1;i<x; i++){
strcat(jedynkowo,"(1+1)*");
ileJedynek+=2;
}
strcat(jedynkowo,"(1+1)");
ileJedynek+=2;
//printf("|JED:%d|",ileJedynek);
}
int main() {
int a,n,i,j,licznik,byla;
scanf(" %d",&n);
for(i=0; i<n; i++){
scanf(" %d",&a);
strcpy(jedynkowo,"");
ileJedynek=0;
if(a==1) {
printf("1\n");
continue;
}
if(a%2==1) {
printf("1+");
a--;
ileJedynek++;
}
licznik = 0;
byla = 0;
do{
if(a%2==1){
if(byla==1) strcat(jedynkowo,"+");
piszJedynki(licznik);
byla=1;
}
a=a/2;
//printf("|a:%d|",a);
licznik++;
if(ileJedynek>100) {
printf("NIE\n");
break;
}
}while(a>0);
if(ileJedynek<=100)
printf("%s\n",jedynkowo);
}
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 | #include <stdio.h> char jedynkowo[50000]; int ileJedynek; void piszJedynki(int x){ int i; for(i = 1;i<x; i++){ strcat(jedynkowo,"(1+1)*"); ileJedynek+=2; } strcat(jedynkowo,"(1+1)"); ileJedynek+=2; //printf("|JED:%d|",ileJedynek); } int main() { int a,n,i,j,licznik,byla; scanf(" %d",&n); for(i=0; i<n; i++){ scanf(" %d",&a); strcpy(jedynkowo,""); ileJedynek=0; if(a==1) { printf("1\n"); continue; } if(a%2==1) { printf("1+"); a--; ileJedynek++; } licznik = 0; byla = 0; do{ if(a%2==1){ if(byla==1) strcat(jedynkowo,"+"); piszJedynki(licznik); byla=1; } a=a/2; //printf("|a:%d|",a); licznik++; if(ileJedynek>100) { printf("NIE\n"); break; } }while(a>0); if(ileJedynek<=100) printf("%s\n",jedynkowo); } return 0; } |
English