#include <iostream>
#include <algorithm>
#include <vector>
#include <unordered_map>
using namespace std;
using ll = long long;
unordered_map<int, char> a{};
int main() {
ios_base::sync_with_stdio(false);
cin.tie(NULL);
a[3] = 'a';
a[4] = 'e';
a[5] = 'g';
a[6] = 'o';
int n{};
cin >> n;
string s{};
cin >> s;
int sum{};
for (int i = 0; i < 8*n; i++) sum += s[i]-'0';
vector<int> v(n, 3);
int sum2 = 3*n;
int i{};
while (sum2 < sum and i < n) {
if (sum2-3+6 <= sum) {
v[i] = 6;
sum2 += 3;
} else if (sum2-3+5 <= sum) {
v[i] = 5;
sum2 += 2;
} else {
v[i] = 4;
sum2++;
}
i++;
}
if (sum2 != sum) {
cout << "NIE\n";
return 0;
}
for (auto el : v) cout << a[el];
cout << "\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 36 37 38 39 40 41 42 43 44 45 46 47 48 | #include <iostream> #include <algorithm> #include <vector> #include <unordered_map> using namespace std; using ll = long long; unordered_map<int, char> a{}; int main() { ios_base::sync_with_stdio(false); cin.tie(NULL); a[3] = 'a'; a[4] = 'e'; a[5] = 'g'; a[6] = 'o'; int n{}; cin >> n; string s{}; cin >> s; int sum{}; for (int i = 0; i < 8*n; i++) sum += s[i]-'0'; vector<int> v(n, 3); int sum2 = 3*n; int i{}; while (sum2 < sum and i < n) { if (sum2-3+6 <= sum) { v[i] = 6; sum2 += 3; } else if (sum2-3+5 <= sum) { v[i] = 5; sum2 += 2; } else { v[i] = 4; sum2++; } i++; } if (sum2 != sum) { cout << "NIE\n"; return 0; } for (auto el : v) cout << a[el]; cout << "\n"; return 0; } |
English