#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; } |