// // main.cpp // Zaklocenia // // Created by Andy Bachleda-Curuś on 07/12/2021. // #include <iostream> #include <string> #include <algorithm> #include <deque> using namespace std; int main() { ios::sync_with_stdio(false); cin.tie(0); int n; cin >> n; string s; cin >> s; int licz_1 = 0; for(int i = 0; i < n * 8; i++) { if(s[i] == '1') licz_1++; } if(licz_1 < 3 * n || licz_1 > 6 * n) { cout << "NIE"; return 0; } int dz_1 = licz_1 / 3, mod_1 = licz_1 % 3; deque <int> d; for(int i = 0; i < dz_1; i++) { d.push_back(3); } if(mod_1 == 1) { d.pop_back(); d.push_back(4); } else if(mod_1 == 2) { d.pop_back(); d.push_back(5); } int ile_6 = 0; int size = d.size(); while(size > n) { d.pop_front(); d.pop_front(); ile_6++; size--; } for(int i = 0; i < ile_6; i++) { cout << "o"; } if(mod_1 != 0) { for(int i = 0; i < d.size() - 1; i++) { cout << "a"; } if(d[d.size() - 1] == 4) { cout << "c"; } else if(d[d.size() - 1] == 5) { cout << "g"; } } else { for(int i = 0; i < d.size(); i++) { cout << "a"; } } cout << endl; 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 84 85 86 87 88 | // // main.cpp // Zaklocenia // // Created by Andy Bachleda-Curuś on 07/12/2021. // #include <iostream> #include <string> #include <algorithm> #include <deque> using namespace std; int main() { ios::sync_with_stdio(false); cin.tie(0); int n; cin >> n; string s; cin >> s; int licz_1 = 0; for(int i = 0; i < n * 8; i++) { if(s[i] == '1') licz_1++; } if(licz_1 < 3 * n || licz_1 > 6 * n) { cout << "NIE"; return 0; } int dz_1 = licz_1 / 3, mod_1 = licz_1 % 3; deque <int> d; for(int i = 0; i < dz_1; i++) { d.push_back(3); } if(mod_1 == 1) { d.pop_back(); d.push_back(4); } else if(mod_1 == 2) { d.pop_back(); d.push_back(5); } int ile_6 = 0; int size = d.size(); while(size > n) { d.pop_front(); d.pop_front(); ile_6++; size--; } for(int i = 0; i < ile_6; i++) { cout << "o"; } if(mod_1 != 0) { for(int i = 0; i < d.size() - 1; i++) { cout << "a"; } if(d[d.size() - 1] == 4) { cout << "c"; } else if(d[d.size() - 1] == 5) { cout << "g"; } } else { for(int i = 0; i < d.size(); i++) { cout << "a"; } } cout << endl; return 0; } |