# | Submission time | Handle | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
773420 | 2023-07-05T04:48:07 Z | Jomnoi | Paint By Numbers (IOI16_paint) | C++17 | 1 ms | 212 KB |
#include <bits/stdc++.h> #include "paint.h" using namespace std; const int MAX_N = 2e5 + 5; int qs[MAX_N]; string ans; string solve_puzzle(string s, vector <int> c) { int N = s.size(), k = c.size(); for (int i = 0; i < k; i++) { for (int j = 0; j < c[i]; j++) ans.push_back('X'); if (i < k - 1) ans.push_back('_'); } while (ans.size() < N) ans.push_back('_'); for (int i = 1; i <= k; i++) qs[i] = qs[i - 1] + c[i - 1]; for (int i = 1; i <= k; i++) { int l = qs[i - 1] + i; int r = N - (qs[k] - qs[i]) - (k - i); for (int j = l; j < r - c[i - 1] + 1; j++) ans[j - 1] = '?'; for (int j = l + c[i - 1]; j <= r; j++) ans[j - 1] = '?'; // for (int j = r - c[i - 1] + 1; j <= l + c[i - 1] - 1; j++) ans[j - 1] = 'X'; } return ans; }
Compilation message
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Correct | 0 ms | 212 KB | n = 13, m = 1 |
2 | Correct | 0 ms | 212 KB | n = 18, m = 1 |
3 | Correct | 0 ms | 212 KB | n = 17, m = 1 |
4 | Correct | 0 ms | 212 KB | n = 1, m = 1 |
5 | Correct | 0 ms | 212 KB | n = 20, m = 1 |
6 | Correct | 0 ms | 212 KB | n = 20, m = 1 |
7 | Correct | 0 ms | 212 KB | n = 20, m = 1 |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Correct | 0 ms | 212 KB | n = 13, m = 1 |
2 | Correct | 0 ms | 212 KB | n = 18, m = 1 |
3 | Correct | 0 ms | 212 KB | n = 17, m = 1 |
4 | Correct | 0 ms | 212 KB | n = 1, m = 1 |
5 | Correct | 0 ms | 212 KB | n = 20, m = 1 |
6 | Correct | 0 ms | 212 KB | n = 20, m = 1 |
7 | Correct | 0 ms | 212 KB | n = 20, m = 1 |
8 | Correct | 0 ms | 212 KB | n = 20, m = 5 |
9 | Correct | 1 ms | 212 KB | n = 18, m = 3 |
10 | Correct | 0 ms | 212 KB | n = 17, m = 2 |
11 | Correct | 0 ms | 212 KB | n = 20, m = 2 |
12 | Correct | 0 ms | 212 KB | n = 17, m = 4 |
13 | Correct | 0 ms | 212 KB | n = 17, m = 6 |
14 | Correct | 0 ms | 212 KB | n = 17, m = 1 |
15 | Correct | 0 ms | 212 KB | n = 17, m = 4 |
16 | Correct | 0 ms | 212 KB | n = 13, m = 3 |
17 | Correct | 0 ms | 212 KB | n = 18, m = 4 |
18 | Correct | 0 ms | 212 KB | n = 20, m = 10 |
19 | Correct | 1 ms | 212 KB | n = 19, m = 10 |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Correct | 0 ms | 212 KB | n = 13, m = 1 |
2 | Correct | 0 ms | 212 KB | n = 18, m = 1 |
3 | Correct | 0 ms | 212 KB | n = 17, m = 1 |
4 | Correct | 0 ms | 212 KB | n = 1, m = 1 |
5 | Correct | 0 ms | 212 KB | n = 20, m = 1 |
6 | Correct | 0 ms | 212 KB | n = 20, m = 1 |
7 | Correct | 0 ms | 212 KB | n = 20, m = 1 |
8 | Correct | 0 ms | 212 KB | n = 20, m = 5 |
9 | Correct | 1 ms | 212 KB | n = 18, m = 3 |
10 | Correct | 0 ms | 212 KB | n = 17, m = 2 |
11 | Correct | 0 ms | 212 KB | n = 20, m = 2 |
12 | Correct | 0 ms | 212 KB | n = 17, m = 4 |
13 | Correct | 0 ms | 212 KB | n = 17, m = 6 |
14 | Correct | 0 ms | 212 KB | n = 17, m = 1 |
15 | Correct | 0 ms | 212 KB | n = 17, m = 4 |
16 | Correct | 0 ms | 212 KB | n = 13, m = 3 |
17 | Correct | 0 ms | 212 KB | n = 18, m = 4 |
18 | Correct | 0 ms | 212 KB | n = 20, m = 10 |
19 | Correct | 1 ms | 212 KB | n = 19, m = 10 |
20 | Correct | 1 ms | 212 KB | n = 100, m = 5 |
21 | Correct | 0 ms | 212 KB | n = 90, m = 3 |
22 | Correct | 0 ms | 212 KB | n = 86, m = 2 |
23 | Correct | 0 ms | 212 KB | n = 81, m = 4 |
24 | Correct | 1 ms | 212 KB | n = 89, m = 10 |
25 | Correct | 1 ms | 212 KB | n = 81, m = 23 |
26 | Correct | 1 ms | 212 KB | n = 86, m = 8 |
27 | Correct | 1 ms | 212 KB | n = 53, m = 22 |
28 | Correct | 0 ms | 212 KB | n = 89, m = 35 |
29 | Correct | 0 ms | 212 KB | n = 63, m = 25 |
30 | Correct | 0 ms | 212 KB | n = 100, m = 50 |
31 | Correct | 0 ms | 212 KB | n = 99, m = 50 |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Correct | 0 ms | 212 KB | n = 13, m = 1 |
2 | Correct | 0 ms | 212 KB | n = 18, m = 1 |
3 | Correct | 0 ms | 212 KB | n = 17, m = 1 |
4 | Correct | 0 ms | 212 KB | n = 1, m = 1 |
5 | Correct | 0 ms | 212 KB | n = 20, m = 1 |
6 | Correct | 0 ms | 212 KB | n = 20, m = 1 |
7 | Correct | 0 ms | 212 KB | n = 20, m = 1 |
8 | Correct | 0 ms | 212 KB | n = 20, m = 5 |
9 | Correct | 1 ms | 212 KB | n = 18, m = 3 |
10 | Correct | 0 ms | 212 KB | n = 17, m = 2 |
11 | Correct | 0 ms | 212 KB | n = 20, m = 2 |
12 | Correct | 0 ms | 212 KB | n = 17, m = 4 |
13 | Correct | 0 ms | 212 KB | n = 17, m = 6 |
14 | Correct | 0 ms | 212 KB | n = 17, m = 1 |
15 | Correct | 0 ms | 212 KB | n = 17, m = 4 |
16 | Correct | 0 ms | 212 KB | n = 13, m = 3 |
17 | Correct | 0 ms | 212 KB | n = 18, m = 4 |
18 | Correct | 0 ms | 212 KB | n = 20, m = 10 |
19 | Correct | 1 ms | 212 KB | n = 19, m = 10 |
20 | Correct | 1 ms | 212 KB | n = 100, m = 5 |
21 | Correct | 0 ms | 212 KB | n = 90, m = 3 |
22 | Correct | 0 ms | 212 KB | n = 86, m = 2 |
23 | Correct | 0 ms | 212 KB | n = 81, m = 4 |
24 | Correct | 1 ms | 212 KB | n = 89, m = 10 |
25 | Correct | 1 ms | 212 KB | n = 81, m = 23 |
26 | Correct | 1 ms | 212 KB | n = 86, m = 8 |
27 | Correct | 1 ms | 212 KB | n = 53, m = 22 |
28 | Correct | 0 ms | 212 KB | n = 89, m = 35 |
29 | Correct | 0 ms | 212 KB | n = 63, m = 25 |
30 | Correct | 0 ms | 212 KB | n = 100, m = 50 |
31 | Correct | 0 ms | 212 KB | n = 99, m = 50 |
32 | Incorrect | 0 ms | 212 KB | char #1 differ - expected: 'X', found: '?' |
33 | Halted | 0 ms | 0 KB | - |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Correct | 0 ms | 212 KB | n = 13, m = 1 |
2 | Correct | 0 ms | 212 KB | n = 18, m = 1 |
3 | Correct | 0 ms | 212 KB | n = 17, m = 1 |
4 | Correct | 0 ms | 212 KB | n = 1, m = 1 |
5 | Correct | 0 ms | 212 KB | n = 20, m = 1 |
6 | Correct | 0 ms | 212 KB | n = 20, m = 1 |
7 | Correct | 0 ms | 212 KB | n = 20, m = 1 |
8 | Correct | 0 ms | 212 KB | n = 20, m = 5 |
9 | Correct | 1 ms | 212 KB | n = 18, m = 3 |
10 | Correct | 0 ms | 212 KB | n = 17, m = 2 |
11 | Correct | 0 ms | 212 KB | n = 20, m = 2 |
12 | Correct | 0 ms | 212 KB | n = 17, m = 4 |
13 | Correct | 0 ms | 212 KB | n = 17, m = 6 |
14 | Correct | 0 ms | 212 KB | n = 17, m = 1 |
15 | Correct | 0 ms | 212 KB | n = 17, m = 4 |
16 | Correct | 0 ms | 212 KB | n = 13, m = 3 |
17 | Correct | 0 ms | 212 KB | n = 18, m = 4 |
18 | Correct | 0 ms | 212 KB | n = 20, m = 10 |
19 | Correct | 1 ms | 212 KB | n = 19, m = 10 |
20 | Correct | 1 ms | 212 KB | n = 100, m = 5 |
21 | Correct | 0 ms | 212 KB | n = 90, m = 3 |
22 | Correct | 0 ms | 212 KB | n = 86, m = 2 |
23 | Correct | 0 ms | 212 KB | n = 81, m = 4 |
24 | Correct | 1 ms | 212 KB | n = 89, m = 10 |
25 | Correct | 1 ms | 212 KB | n = 81, m = 23 |
26 | Correct | 1 ms | 212 KB | n = 86, m = 8 |
27 | Correct | 1 ms | 212 KB | n = 53, m = 22 |
28 | Correct | 0 ms | 212 KB | n = 89, m = 35 |
29 | Correct | 0 ms | 212 KB | n = 63, m = 25 |
30 | Correct | 0 ms | 212 KB | n = 100, m = 50 |
31 | Correct | 0 ms | 212 KB | n = 99, m = 50 |
32 | Incorrect | 0 ms | 212 KB | char #1 differ - expected: 'X', found: '?' |
33 | Halted | 0 ms | 0 KB | - |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Correct | 0 ms | 212 KB | n = 13, m = 1 |
2 | Correct | 0 ms | 212 KB | n = 18, m = 1 |
3 | Correct | 0 ms | 212 KB | n = 17, m = 1 |
4 | Correct | 0 ms | 212 KB | n = 1, m = 1 |
5 | Correct | 0 ms | 212 KB | n = 20, m = 1 |
6 | Correct | 0 ms | 212 KB | n = 20, m = 1 |
7 | Correct | 0 ms | 212 KB | n = 20, m = 1 |
8 | Correct | 0 ms | 212 KB | n = 20, m = 5 |
9 | Correct | 1 ms | 212 KB | n = 18, m = 3 |
10 | Correct | 0 ms | 212 KB | n = 17, m = 2 |
11 | Correct | 0 ms | 212 KB | n = 20, m = 2 |
12 | Correct | 0 ms | 212 KB | n = 17, m = 4 |
13 | Correct | 0 ms | 212 KB | n = 17, m = 6 |
14 | Correct | 0 ms | 212 KB | n = 17, m = 1 |
15 | Correct | 0 ms | 212 KB | n = 17, m = 4 |
16 | Correct | 0 ms | 212 KB | n = 13, m = 3 |
17 | Correct | 0 ms | 212 KB | n = 18, m = 4 |
18 | Correct | 0 ms | 212 KB | n = 20, m = 10 |
19 | Correct | 1 ms | 212 KB | n = 19, m = 10 |
20 | Correct | 1 ms | 212 KB | n = 100, m = 5 |
21 | Correct | 0 ms | 212 KB | n = 90, m = 3 |
22 | Correct | 0 ms | 212 KB | n = 86, m = 2 |
23 | Correct | 0 ms | 212 KB | n = 81, m = 4 |
24 | Correct | 1 ms | 212 KB | n = 89, m = 10 |
25 | Correct | 1 ms | 212 KB | n = 81, m = 23 |
26 | Correct | 1 ms | 212 KB | n = 86, m = 8 |
27 | Correct | 1 ms | 212 KB | n = 53, m = 22 |
28 | Correct | 0 ms | 212 KB | n = 89, m = 35 |
29 | Correct | 0 ms | 212 KB | n = 63, m = 25 |
30 | Correct | 0 ms | 212 KB | n = 100, m = 50 |
31 | Correct | 0 ms | 212 KB | n = 99, m = 50 |
32 | Incorrect | 0 ms | 212 KB | char #1 differ - expected: 'X', found: '?' |
33 | Halted | 0 ms | 0 KB | - |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Correct | 0 ms | 212 KB | n = 13, m = 1 |
2 | Correct | 0 ms | 212 KB | n = 18, m = 1 |
3 | Correct | 0 ms | 212 KB | n = 17, m = 1 |
4 | Correct | 0 ms | 212 KB | n = 1, m = 1 |
5 | Correct | 0 ms | 212 KB | n = 20, m = 1 |
6 | Correct | 0 ms | 212 KB | n = 20, m = 1 |
7 | Correct | 0 ms | 212 KB | n = 20, m = 1 |
8 | Correct | 0 ms | 212 KB | n = 20, m = 5 |
9 | Correct | 1 ms | 212 KB | n = 18, m = 3 |
10 | Correct | 0 ms | 212 KB | n = 17, m = 2 |
11 | Correct | 0 ms | 212 KB | n = 20, m = 2 |
12 | Correct | 0 ms | 212 KB | n = 17, m = 4 |
13 | Correct | 0 ms | 212 KB | n = 17, m = 6 |
14 | Correct | 0 ms | 212 KB | n = 17, m = 1 |
15 | Correct | 0 ms | 212 KB | n = 17, m = 4 |
16 | Correct | 0 ms | 212 KB | n = 13, m = 3 |
17 | Correct | 0 ms | 212 KB | n = 18, m = 4 |
18 | Correct | 0 ms | 212 KB | n = 20, m = 10 |
19 | Correct | 1 ms | 212 KB | n = 19, m = 10 |
20 | Correct | 1 ms | 212 KB | n = 100, m = 5 |
21 | Correct | 0 ms | 212 KB | n = 90, m = 3 |
22 | Correct | 0 ms | 212 KB | n = 86, m = 2 |
23 | Correct | 0 ms | 212 KB | n = 81, m = 4 |
24 | Correct | 1 ms | 212 KB | n = 89, m = 10 |
25 | Correct | 1 ms | 212 KB | n = 81, m = 23 |
26 | Correct | 1 ms | 212 KB | n = 86, m = 8 |
27 | Correct | 1 ms | 212 KB | n = 53, m = 22 |
28 | Correct | 0 ms | 212 KB | n = 89, m = 35 |
29 | Correct | 0 ms | 212 KB | n = 63, m = 25 |
30 | Correct | 0 ms | 212 KB | n = 100, m = 50 |
31 | Correct | 0 ms | 212 KB | n = 99, m = 50 |
32 | Incorrect | 0 ms | 212 KB | char #1 differ - expected: 'X', found: '?' |
33 | Halted | 0 ms | 0 KB | - |