# | Submission time | Handle | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
610821 | 2022-07-28T15:12:19 Z | CoolRabbitXT | Paint By Numbers (IOI16_paint) | C++14 | 1 ms | 308 KB |
#include "paint.h" #include <bits/stdc++.h> using namespace std; #include <cstdlib> int n; int variacion; int clue_sum = 0; int bit_counter = 0; int bit_count_int; const int NMAX = 101; bitset <NMAX>bit_rep; bitset <NMAX> answer; string result (NMAX, '?'); bitset <NMAX> original; std::string solve_puzzle(std::string s, std::vector<int> c) { n = s.size(); for(int i = 0; i< c.size(); i++){ clue_sum += c[i]; } variacion = n - (c.size() -1 + clue_sum); for(int i = 0; i< c.size(); i++){ bit_count_int = bit_counter; for(int j = bit_count_int; j < c[i] + bit_count_int; j++){ bit_rep.set(NMAX - j -1, 1); bit_counter ++; } if(i != c.size() -1){ bit_counter ++; } } answer = bit_rep; original = bit_rep; for(int i = 0; i<variacion; i++){ answer = answer & bit_rep >> 1; bit_rep >>= 1; } for(int i = 0; i<n; i++) result[i] = '?'; for(int i = 0; i< n; i++){ if(answer[NMAX - i -1]) result[i] = 'X'; } bit_rep = original; answer = ~bit_rep; bit_rep = ~bit_rep; for(int i = 0; i<variacion; i++){ answer = answer & bit_rep >> 1; bit_rep >>= 1; } for(int i = 0; i< n; i++){ if(answer[NMAX - i -1]) result[i] = '_'; } result.resize(n); //cout << result << endl; return result; }
Compilation message
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Correct | 1 ms | 212 KB | n = 13, m = 1 |
2 | Correct | 0 ms | 212 KB | n = 18, m = 1 |
3 | Correct | 1 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 | 1 ms | 212 KB | n = 20, m = 1 |
7 | Correct | 1 ms | 308 KB | n = 20, m = 1 |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Correct | 1 ms | 212 KB | n = 13, m = 1 |
2 | Correct | 0 ms | 212 KB | n = 18, m = 1 |
3 | Correct | 1 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 | 1 ms | 212 KB | n = 20, m = 1 |
7 | Correct | 1 ms | 308 KB | n = 20, m = 1 |
8 | Correct | 1 ms | 212 KB | n = 20, m = 5 |
9 | Correct | 1 ms | 304 KB | n = 18, m = 3 |
10 | Correct | 0 ms | 212 KB | n = 17, m = 2 |
11 | Correct | 0 ms | 304 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 | 1 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 | 1 ms | 304 KB | n = 20, m = 10 |
19 | Correct | 0 ms | 212 KB | n = 19, m = 10 |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Correct | 1 ms | 212 KB | n = 13, m = 1 |
2 | Correct | 0 ms | 212 KB | n = 18, m = 1 |
3 | Correct | 1 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 | 1 ms | 212 KB | n = 20, m = 1 |
7 | Correct | 1 ms | 308 KB | n = 20, m = 1 |
8 | Correct | 1 ms | 212 KB | n = 20, m = 5 |
9 | Correct | 1 ms | 304 KB | n = 18, m = 3 |
10 | Correct | 0 ms | 212 KB | n = 17, m = 2 |
11 | Correct | 0 ms | 304 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 | 1 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 | 1 ms | 304 KB | n = 20, m = 10 |
19 | Correct | 0 ms | 212 KB | n = 19, m = 10 |
20 | Correct | 0 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 | 1 ms | 212 KB | n = 81, m = 4 |
24 | Correct | 1 ms | 304 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 | 0 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 | 308 KB | n = 100, m = 50 |
31 | Correct | 0 ms | 212 KB | n = 99, m = 50 |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Correct | 1 ms | 212 KB | n = 13, m = 1 |
2 | Correct | 0 ms | 212 KB | n = 18, m = 1 |
3 | Correct | 1 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 | 1 ms | 212 KB | n = 20, m = 1 |
7 | Correct | 1 ms | 308 KB | n = 20, m = 1 |
8 | Correct | 1 ms | 212 KB | n = 20, m = 5 |
9 | Correct | 1 ms | 304 KB | n = 18, m = 3 |
10 | Correct | 0 ms | 212 KB | n = 17, m = 2 |
11 | Correct | 0 ms | 304 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 | 1 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 | 1 ms | 304 KB | n = 20, m = 10 |
19 | Correct | 0 ms | 212 KB | n = 19, m = 10 |
20 | Correct | 0 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 | 1 ms | 212 KB | n = 81, m = 4 |
24 | Correct | 1 ms | 304 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 | 0 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 | 308 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 | 1 ms | 212 KB | n = 13, m = 1 |
2 | Correct | 0 ms | 212 KB | n = 18, m = 1 |
3 | Correct | 1 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 | 1 ms | 212 KB | n = 20, m = 1 |
7 | Correct | 1 ms | 308 KB | n = 20, m = 1 |
8 | Correct | 1 ms | 212 KB | n = 20, m = 5 |
9 | Correct | 1 ms | 304 KB | n = 18, m = 3 |
10 | Correct | 0 ms | 212 KB | n = 17, m = 2 |
11 | Correct | 0 ms | 304 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 | 1 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 | 1 ms | 304 KB | n = 20, m = 10 |
19 | Correct | 0 ms | 212 KB | n = 19, m = 10 |
20 | Correct | 0 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 | 1 ms | 212 KB | n = 81, m = 4 |
24 | Correct | 1 ms | 304 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 | 0 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 | 308 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 | 1 ms | 212 KB | n = 13, m = 1 |
2 | Correct | 0 ms | 212 KB | n = 18, m = 1 |
3 | Correct | 1 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 | 1 ms | 212 KB | n = 20, m = 1 |
7 | Correct | 1 ms | 308 KB | n = 20, m = 1 |
8 | Correct | 1 ms | 212 KB | n = 20, m = 5 |
9 | Correct | 1 ms | 304 KB | n = 18, m = 3 |
10 | Correct | 0 ms | 212 KB | n = 17, m = 2 |
11 | Correct | 0 ms | 304 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 | 1 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 | 1 ms | 304 KB | n = 20, m = 10 |
19 | Correct | 0 ms | 212 KB | n = 19, m = 10 |
20 | Correct | 0 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 | 1 ms | 212 KB | n = 81, m = 4 |
24 | Correct | 1 ms | 304 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 | 0 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 | 308 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 | 1 ms | 212 KB | n = 13, m = 1 |
2 | Correct | 0 ms | 212 KB | n = 18, m = 1 |
3 | Correct | 1 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 | 1 ms | 212 KB | n = 20, m = 1 |
7 | Correct | 1 ms | 308 KB | n = 20, m = 1 |
8 | Correct | 1 ms | 212 KB | n = 20, m = 5 |
9 | Correct | 1 ms | 304 KB | n = 18, m = 3 |
10 | Correct | 0 ms | 212 KB | n = 17, m = 2 |
11 | Correct | 0 ms | 304 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 | 1 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 | 1 ms | 304 KB | n = 20, m = 10 |
19 | Correct | 0 ms | 212 KB | n = 19, m = 10 |
20 | Correct | 0 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 | 1 ms | 212 KB | n = 81, m = 4 |
24 | Correct | 1 ms | 304 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 | 0 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 | 308 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 | - |