#include <iostream>
using namespace std;
int a,jedy,g,t;
void wypisz (int h)
{
cout<<"(";
for (int i=0;i<h-1;i++)
cout<<"1+";
cout<<"1)";
}
void rozklad(int n)
{
if (n!=a) wypisz(2);
if (n%2==1&&n>5)
{
jedy++;
if (n!=a) cout<<"*(";
n=(n-1)/2;
rozklad(n);
}
else
{
if (n<=5)
{
cout<<"*";
wypisz(n);
}
else
{
n=n/2;
if (2*n!=a) cout<<"*";
rozklad(n);
}
}
}
int main()
{
ios_base::sync_with_stdio(0);
cin.tie(0);
cin>>t;
for (int v=0;v<t;v++)
{
cin>>a;
if (a<=5)
{
for(int i=0;i<a-1;i++)
{
cout<<"1+";
}
cout<<1;
}
else
{
rozklad(a);
if(a%2==1) g=1;
for (int i=0;i<jedy;i++)
{
cout<<"+1";
if (jedy>1)
if (i!=jedy-1)
{
cout<<")";
}
if (i==jedy-1)
{
if (g!=1) cout<<")";
}
}
}
cout<<"\n";
jedy=0;
}
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 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 79 80 81 82 83 | #include <iostream> using namespace std; int a,jedy,g,t; void wypisz (int h) { cout<<"("; for (int i=0;i<h-1;i++) cout<<"1+"; cout<<"1)"; } void rozklad(int n) { if (n!=a) wypisz(2); if (n%2==1&&n>5) { jedy++; if (n!=a) cout<<"*("; n=(n-1)/2; rozklad(n); } else { if (n<=5) { cout<<"*"; wypisz(n); } else { n=n/2; if (2*n!=a) cout<<"*"; rozklad(n); } } } int main() { ios_base::sync_with_stdio(0); cin.tie(0); cin>>t; for (int v=0;v<t;v++) { cin>>a; if (a<=5) { for(int i=0;i<a-1;i++) { cout<<"1+"; } cout<<1; } else { rozklad(a); if(a%2==1) g=1; for (int i=0;i<jedy;i++) { cout<<"+1"; if (jedy>1) if (i!=jedy-1) { cout<<")"; } if (i==jedy-1) { if (g!=1) cout<<")"; } } } cout<<"\n"; jedy=0; } return 0; } |
English