#include<cstdio> #include<stack> using namespace std; int a,k; stack<int>S; int main() { scanf("%d",&a); for(int j=1;j<=a;++j) { scanf("%d",&k); if(k==1)printf("1\n"); int suma = 0; for(int i=2;suma<=100 && k>1 && i<=1000000000;++i) { while(k%i==0) { S.push(i); suma+=i; k/=i; } } if(suma>100) { printf("NIE\n"); while(!S.empty()) S.pop(); } else { bool p=true; while(!S.empty()) { if(p==false) printf("*(1"); else { printf("(1"); p=false; } for(int i=S.top()-1;i>=1;--i) { printf("+1"); } printf(")"); S.pop(); } } 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 | #include<cstdio> #include<stack> using namespace std; int a,k; stack<int>S; int main() { scanf("%d",&a); for(int j=1;j<=a;++j) { scanf("%d",&k); if(k==1)printf("1\n"); int suma = 0; for(int i=2;suma<=100 && k>1 && i<=1000000000;++i) { while(k%i==0) { S.push(i); suma+=i; k/=i; } } if(suma>100) { printf("NIE\n"); while(!S.empty()) S.pop(); } else { bool p=true; while(!S.empty()) { if(p==false) printf("*(1"); else { printf("(1"); p=false; } for(int i=S.top()-1;i>=1;--i) { printf("+1"); } printf(")"); S.pop(); } } printf("\n"); } } |