#include <stdio.h> #include <iostream> using namespace std; const int D=100001, L=6; char validis[]={'`', '`', 'o', 'n', 'j', 'b'}; char res[D]; int main(){ string s; int i, n, z=0, further, j; cin>>n; cin>>s; int ln = 8*n; for (i=0; i<ln; i++){ if (s[i]=='0') z++; } for (i=0; i<n; i++){ further = n-i-1; for (j=2; j<L; j++){ if (z-j >= further * 2 && z-j <= further * (L-1)) break; } if (j==L) break; res[i] = validis[j]; z-=j; } if (i<n) { printf ("NIE\n"); return 0; } for (i=0; i<n; i++) putchar(res[i]); printf ("\n"); 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 | #include <stdio.h> #include <iostream> using namespace std; const int D=100001, L=6; char validis[]={'`', '`', 'o', 'n', 'j', 'b'}; char res[D]; int main(){ string s; int i, n, z=0, further, j; cin>>n; cin>>s; int ln = 8*n; for (i=0; i<ln; i++){ if (s[i]=='0') z++; } for (i=0; i<n; i++){ further = n-i-1; for (j=2; j<L; j++){ if (z-j >= further * 2 && z-j <= further * (L-1)) break; } if (j==L) break; res[i] = validis[j]; z-=j; } if (i<n) { printf ("NIE\n"); return 0; } for (i=0; i<n; i++) putchar(res[i]); printf ("\n"); return 0;} |