#include <bits/stdc++.h>
#define all(x) (x).begin(), (x).end()
#define sz(x) (int)((x).size())
#define pb push_back
using namespace std;
inline void solve () {
int k; cin >> k;
vector <int> cnt (10);
for (int i = 1; i <= 9; ++i) cin >> cnt[i];
int n = accumulate(all(cnt), 0);
string en;
int dig = 9;
int iter = k - 1;
while (iter--) {
while (!cnt[dig]) --dig;
en.pb((char)(dig + '0'));
--cnt[dig];
}
while (!cnt[dig]) --dig;
vector <string> as;
deque <string> ass;
while (cnt[dig]) as.pb(string(1, (char)(dig + '0'))), --cnt[dig];
for (int i = 1; i <= 9; ++i) {
while (cnt[i]--) {
ass.pb(string(1, (char)(i + '0')));
}
}
int pos = sz(as) - 1;
while (sz(ass)) {
string v = ass.front(); ass.pop_front();
as[pos] += v;
if (pos && (!sz(ass) || v != ass.front())) {
while (sz(as) > pos) {
ass.push_back(as.back());
as.pop_back();
}
}
--pos;
if (!~pos) pos = sz(as) - 1;
}
string t;
for (auto q : as) t += q;
reverse(all(en)); t += en;
cout << t << endl;
}
signed main ()
{
ios_base::sync_with_stdio(0);
cin.tie(0); cout.tie(0);
#ifdef LOCAL
freopen("input.txt", "r", stdin);
freopen("output.txt", "w", stdout);
#endif // LOCAL
int t = 1; cin >> t;
while (t--) solve();
return 0;
}
Compilation message
devil.cpp: In function 'void solve()':
devil.cpp:12:9: warning: unused variable 'n' [-Wunused-variable]
12 | int n = accumulate(all(cnt), 0);
| ^
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Correct |
4 ms |
256 KB |
Output is correct |
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Correct |
116 ms |
1272 KB |
Output is correct |
2 |
Correct |
90 ms |
1164 KB |
Output is correct |
3 |
Correct |
84 ms |
1420 KB |
Output is correct |
4 |
Correct |
119 ms |
1232 KB |
Output is correct |
5 |
Correct |
57 ms |
1356 KB |
Output is correct |
6 |
Correct |
45 ms |
1324 KB |
Output is correct |
7 |
Correct |
38 ms |
1228 KB |
Output is correct |
8 |
Correct |
38 ms |
1624 KB |
Output is correct |
9 |
Correct |
39 ms |
4468 KB |
Output is correct |
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Correct |
76 ms |
1084 KB |
Output is correct |
2 |
Correct |
48 ms |
1228 KB |
Output is correct |
3 |
Correct |
27 ms |
5728 KB |
Output is correct |
4 |
Correct |
41 ms |
5440 KB |
Output is correct |
5 |
Correct |
67 ms |
5644 KB |
Output is correct |
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Correct |
4 ms |
256 KB |
Output is correct |
2 |
Correct |
116 ms |
1272 KB |
Output is correct |
3 |
Correct |
90 ms |
1164 KB |
Output is correct |
4 |
Correct |
84 ms |
1420 KB |
Output is correct |
5 |
Correct |
119 ms |
1232 KB |
Output is correct |
6 |
Correct |
57 ms |
1356 KB |
Output is correct |
7 |
Correct |
45 ms |
1324 KB |
Output is correct |
8 |
Correct |
38 ms |
1228 KB |
Output is correct |
9 |
Correct |
38 ms |
1624 KB |
Output is correct |
10 |
Correct |
39 ms |
4468 KB |
Output is correct |
11 |
Correct |
76 ms |
1084 KB |
Output is correct |
12 |
Correct |
48 ms |
1228 KB |
Output is correct |
13 |
Correct |
27 ms |
5728 KB |
Output is correct |
14 |
Correct |
41 ms |
5440 KB |
Output is correct |
15 |
Correct |
67 ms |
5644 KB |
Output is correct |
16 |
Correct |
116 ms |
1056 KB |
Output is correct |
17 |
Correct |
111 ms |
1200 KB |
Output is correct |
18 |
Correct |
101 ms |
1168 KB |
Output is correct |
19 |
Correct |
156 ms |
1340 KB |
Output is correct |
20 |
Correct |
26 ms |
1356 KB |
Output is correct |
21 |
Correct |
25 ms |
1260 KB |
Output is correct |
22 |
Correct |
27 ms |
1648 KB |
Output is correct |
23 |
Correct |
35 ms |
5028 KB |
Output is correct |