#include <bits/stdc++.h> using namespace std; string z = "acgw"; int main() { ios_base::sync_with_stdio(0); int n, q[2]{}; cin >> n; string s; cin >> s; for (auto i : s) { q[i - '0']++; } q[0] -= n; q[1] -= n * 2; if (min(q[0], q[1]) < 0) { cout << "NIE"; return 0; } // cout << q[0] << ' ' << q[1]; for (int i = 0; i <= n; i++) { pair<int, int> x = {q[0], q[1]}; x.first -= 4 * i; x.second -= i; if (min(x.first, x.second) < 0) { continue; } int rem = n - i; if (x.first >= x.second) { int diff = x.first - x.second; x.first -= diff * 3; x.second -= diff * 2; // cout<<"P"; if (min(x.first, x.second) < 0) continue; if ((x.first % 5) || (x.second % 5)) continue; for (; i; i--) cout << "a"; while (diff--) cout << "c"; x.first += 5; while (x.first -= 5) cout << "cg"; return 0; } else { // cout<<"P"; int diff = x.second - x.first; x.first -= diff * 2; x.second -= diff * 3; if (min(x.first, x.second) < 0) continue; if ((x.first % 5) || (x.second % 5)) continue; for (; i; i--) cout << "a"; while (diff--) cout << "g"; x.first += 5; while (x.first -= 5) cout << "cg"; return 0; } } for (int i = 0; i <= n; i++) { pair<int, int> x = {q[0], q[1]}; x.first -= i; x.second -= i * 4; if (min(x.first, x.second) < 0) { continue; } int rem = n - i; if (x.first >= x.second) { int diff = x.first - x.second; x.first -= diff * 3; x.second -= diff * 2; if (min(x.first, x.second) < 0) continue; if ((x.first % 5) || (x.second % 5)) continue; for (; i; i--) cout << "w"; while (diff--) cout << "c"; x.first += 5; while (x.first -= 5) cout << "cg"; return 0; } else { int diff = x.second - x.first; x.first -= diff * 2; x.second -= diff * 3; if (min(x.first, x.second) < 0) continue; if ((x.first % 5) || (x.second % 5)) continue; for (; i; i--) cout << "w"; while (diff--) cout << "g"; x.first += 5; while (x.first -= 5) cout << "cg"; return 0; } } cout << "NIE"; }
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 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 | #include <bits/stdc++.h> using namespace std; string z = "acgw"; int main() { ios_base::sync_with_stdio(0); int n, q[2]{}; cin >> n; string s; cin >> s; for (auto i : s) { q[i - '0']++; } q[0] -= n; q[1] -= n * 2; if (min(q[0], q[1]) < 0) { cout << "NIE"; return 0; } // cout << q[0] << ' ' << q[1]; for (int i = 0; i <= n; i++) { pair<int, int> x = {q[0], q[1]}; x.first -= 4 * i; x.second -= i; if (min(x.first, x.second) < 0) { continue; } int rem = n - i; if (x.first >= x.second) { int diff = x.first - x.second; x.first -= diff * 3; x.second -= diff * 2; // cout<<"P"; if (min(x.first, x.second) < 0) continue; if ((x.first % 5) || (x.second % 5)) continue; for (; i; i--) cout << "a"; while (diff--) cout << "c"; x.first += 5; while (x.first -= 5) cout << "cg"; return 0; } else { // cout<<"P"; int diff = x.second - x.first; x.first -= diff * 2; x.second -= diff * 3; if (min(x.first, x.second) < 0) continue; if ((x.first % 5) || (x.second % 5)) continue; for (; i; i--) cout << "a"; while (diff--) cout << "g"; x.first += 5; while (x.first -= 5) cout << "cg"; return 0; } } for (int i = 0; i <= n; i++) { pair<int, int> x = {q[0], q[1]}; x.first -= i; x.second -= i * 4; if (min(x.first, x.second) < 0) { continue; } int rem = n - i; if (x.first >= x.second) { int diff = x.first - x.second; x.first -= diff * 3; x.second -= diff * 2; if (min(x.first, x.second) < 0) continue; if ((x.first % 5) || (x.second % 5)) continue; for (; i; i--) cout << "w"; while (diff--) cout << "c"; x.first += 5; while (x.first -= 5) cout << "cg"; return 0; } else { int diff = x.second - x.first; x.first -= diff * 2; x.second -= diff * 3; if (min(x.first, x.second) < 0) continue; if ((x.first % 5) || (x.second % 5)) continue; for (; i; i--) cout << "w"; while (diff--) cout << "g"; x.first += 5; while (x.first -= 5) cout << "cg"; return 0; } } cout << "NIE"; } |