#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"); } } |
English