#include <bits/stdc++.h> #define ll long long #define mp make_pair #define fi first #define se second #define pb push_back #define vi vector<int> #define pi pair<int, int> #define mod 998244353 template<typename T> bool chkmin(T &a, T b){return (b < a) ? a = b, 1 : 0;} template<typename T> bool chkmax(T &a, T b){return (b > a) ? a = b, 1 : 0;} ll ksm(ll a, ll b) {if (b == 0) return 1; ll ns = ksm(a, b >> 1); ns = ns * ns % mod; if (b & 1) ns = ns * a % mod; return ns;} using namespace std; int n, k; char a[4] = {'a', 'c', 'g', 'o'}; const int maxn = 800005; char inp[maxn]; int cnt[2]; int main() { int n; cin >> n; scanf("%s", inp + 1); for (int i = 1; i <= 8 * n; i++) cnt[inp[i] - '0'] += 1; if (cnt[1] >= 3 * n && cnt[1] <= 6 * n) { cnt[1] -= 3 * n; for (int j = 1; j <= n; j++) { int cr = min(cnt[1], 3); printf("%c", a[cr]); cnt[1] -= cr; } } else cout << "NIE" << endl; return (0-0); // <3 cxr }
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 <bits/stdc++.h> #define ll long long #define mp make_pair #define fi first #define se second #define pb push_back #define vi vector<int> #define pi pair<int, int> #define mod 998244353 template<typename T> bool chkmin(T &a, T b){return (b < a) ? a = b, 1 : 0;} template<typename T> bool chkmax(T &a, T b){return (b > a) ? a = b, 1 : 0;} ll ksm(ll a, ll b) {if (b == 0) return 1; ll ns = ksm(a, b >> 1); ns = ns * ns % mod; if (b & 1) ns = ns * a % mod; return ns;} using namespace std; int n, k; char a[4] = {'a', 'c', 'g', 'o'}; const int maxn = 800005; char inp[maxn]; int cnt[2]; int main() { int n; cin >> n; scanf("%s", inp + 1); for (int i = 1; i <= 8 * n; i++) cnt[inp[i] - '0'] += 1; if (cnt[1] >= 3 * n && cnt[1] <= 6 * n) { cnt[1] -= 3 * n; for (int j = 1; j <= n; j++) { int cr = min(cnt[1], 3); printf("%c", a[cr]); cnt[1] -= cr; } } else cout << "NIE" << endl; return (0-0); // <3 cxr } |