Submission #723796

# Submission time Handle Problem Language Result Execution time Memory
723796 2023-04-14T10:18:13 Z Johann Colors (BOI20_colors) C++14
0 / 100
1 ms 320 KB
#include "bits/stdc++.h"
using namespace std;

typedef vector<int> vi;
typedef vector<vi> vvi;
#define sz(x) (int)(x).size()

vi queries;
vi ans;
int query(int i)
{
    queries.push_back(i);
    cout << "? " << i << endl;
    int a;
    cin >> a;
    ans.push_back(a);
    return a;
}
void answer(int i)
{
    cout << "= " << i << endl;
}

int main()
{
    ios::sync_with_stdio(false);
    cin.tie(0);
    cout.tie(0);

    int N;
    cin >> N;

    int l = 1, r = N;
    while (r - l > 60)
        l += 30, r -= 30;
    if (r - l > 30)
        l = (l + r) / 2;
    int len = r - l;

    int a = 0;
    query(l);
    a = query(r);
    while (a == 0 && len < N - 1)
    {
        len += 30;
        int last = queries.back();
        double center = (queries[sz(queries) - 2] + queries.back()) / (double)2;
        int next = last;
        if (last < center)
            next = min(N, next + len);
        else
            next = max(1, next - len);
        a = query(next);
        len = abs(queries[sz(queries) - 2] - queries.back());
    }
    if (a == 0)
        answer(N);
    else
    {
        double center = (queries[sz(queries) - 2] + queries.back()) / (double)2;
        int lowerB = max(1, len - 30);
        while (a == 1 && len > lowerB)
        {
            len -= 1;
            int last = queries.back();
            int next = last;
            if (last < center)
                next += len;
            else
                next -= len;
            a = query(next);
        }
        if (a == 0)
            answer(len + 1);
        else
            answer(len);
    }
    return 0;
};
# Verdict Execution time Memory Grader output
1 Correct 1 ms 208 KB OK (5 queries)
2 Correct 1 ms 208 KB OK (7 queries)
3 Correct 1 ms 208 KB OK (10 queries)
4 Correct 1 ms 208 KB OK (26 queries)
5 Correct 1 ms 208 KB OK (13 queries)
6 Correct 1 ms 208 KB OK (27 queries)
7 Correct 1 ms 208 KB OK (18 queries)
8 Correct 1 ms 208 KB OK (8 queries)
9 Correct 1 ms 208 KB OK (10 queries)
10 Correct 1 ms 208 KB OK (11 queries)
11 Correct 1 ms 208 KB OK (4 queries)
12 Correct 0 ms 208 KB OK (5 queries)
13 Correct 1 ms 208 KB OK (12 queries)
14 Correct 1 ms 208 KB OK (17 queries)
15 Correct 1 ms 208 KB OK (12 queries)
16 Correct 1 ms 208 KB OK (8 queries)
17 Correct 1 ms 208 KB OK (3 queries)
18 Correct 1 ms 208 KB OK (17 queries)
19 Correct 0 ms 208 KB OK (3 queries)
20 Correct 1 ms 208 KB OK (33 queries)
21 Correct 1 ms 208 KB OK (10 queries)
22 Correct 0 ms 208 KB OK (2 queries)
23 Correct 0 ms 208 KB OK (2 queries)
24 Correct 1 ms 208 KB OK (2 queries)
25 Correct 1 ms 208 KB OK (3 queries)
26 Correct 1 ms 208 KB OK (3 queries)
27 Correct 1 ms 208 KB OK (2 queries)
28 Correct 0 ms 208 KB OK (3 queries)
29 Correct 1 ms 208 KB OK (4 queries)
30 Correct 1 ms 208 KB OK (4 queries)
31 Correct 1 ms 208 KB OK (2 queries)
32 Correct 1 ms 208 KB OK (3 queries)
33 Correct 0 ms 208 KB OK (4 queries)
34 Correct 1 ms 208 KB OK (5 queries)
35 Correct 1 ms 208 KB OK (5 queries)
36 Correct 0 ms 208 KB OK (2 queries)
37 Correct 1 ms 208 KB OK (3 queries)
38 Correct 0 ms 208 KB OK (4 queries)
39 Correct 1 ms 208 KB OK (5 queries)
40 Correct 0 ms 208 KB OK (6 queries)
41 Correct 1 ms 208 KB OK (6 queries)
42 Correct 0 ms 208 KB OK (2 queries)
43 Correct 0 ms 208 KB OK (3 queries)
44 Correct 1 ms 320 KB OK (4 queries)
45 Correct 1 ms 208 KB OK (5 queries)
46 Correct 0 ms 208 KB OK (6 queries)
47 Correct 0 ms 208 KB OK (7 queries)
48 Correct 1 ms 208 KB OK (7 queries)
49 Correct 1 ms 208 KB OK (2 queries)
50 Correct 0 ms 208 KB OK (3 queries)
51 Correct 1 ms 208 KB OK (4 queries)
52 Correct 1 ms 208 KB OK (5 queries)
53 Correct 0 ms 208 KB OK (6 queries)
54 Correct 0 ms 208 KB OK (7 queries)
55 Correct 0 ms 208 KB OK (8 queries)
56 Correct 1 ms 208 KB OK (8 queries)
57 Correct 0 ms 208 KB OK (3 queries)
58 Correct 0 ms 208 KB OK (2 queries)
59 Correct 1 ms 208 KB OK (4 queries)
60 Correct 0 ms 208 KB OK (3 queries)
61 Correct 0 ms 208 KB OK (3 queries)
62 Correct 0 ms 208 KB OK (4 queries)
63 Correct 0 ms 208 KB OK (3 queries)
64 Correct 0 ms 208 KB OK (5 queries)
65 Incorrect 1 ms 208 KB Hair color 31 was used multiple times
66 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 1 ms 208 KB OK (5 queries)
2 Correct 1 ms 208 KB OK (7 queries)
3 Correct 1 ms 208 KB OK (10 queries)
4 Correct 1 ms 208 KB OK (26 queries)
5 Correct 1 ms 208 KB OK (13 queries)
6 Correct 1 ms 208 KB OK (27 queries)
7 Correct 1 ms 208 KB OK (18 queries)
8 Correct 1 ms 208 KB OK (8 queries)
9 Correct 1 ms 208 KB OK (10 queries)
10 Correct 1 ms 208 KB OK (11 queries)
11 Correct 1 ms 208 KB OK (4 queries)
12 Correct 0 ms 208 KB OK (5 queries)
13 Correct 1 ms 208 KB OK (12 queries)
14 Correct 1 ms 208 KB OK (17 queries)
15 Correct 1 ms 208 KB OK (12 queries)
16 Correct 1 ms 208 KB OK (8 queries)
17 Correct 1 ms 208 KB OK (3 queries)
18 Correct 1 ms 208 KB OK (17 queries)
19 Correct 0 ms 208 KB OK (3 queries)
20 Correct 1 ms 208 KB OK (33 queries)
21 Correct 1 ms 208 KB OK (10 queries)
22 Correct 0 ms 208 KB OK (2 queries)
23 Correct 0 ms 208 KB OK (2 queries)
24 Correct 1 ms 208 KB OK (2 queries)
25 Correct 1 ms 208 KB OK (3 queries)
26 Correct 1 ms 208 KB OK (3 queries)
27 Correct 1 ms 208 KB OK (2 queries)
28 Correct 0 ms 208 KB OK (3 queries)
29 Correct 1 ms 208 KB OK (4 queries)
30 Correct 1 ms 208 KB OK (4 queries)
31 Correct 1 ms 208 KB OK (2 queries)
32 Correct 1 ms 208 KB OK (3 queries)
33 Correct 0 ms 208 KB OK (4 queries)
34 Correct 1 ms 208 KB OK (5 queries)
35 Correct 1 ms 208 KB OK (5 queries)
36 Correct 0 ms 208 KB OK (2 queries)
37 Correct 1 ms 208 KB OK (3 queries)
38 Correct 0 ms 208 KB OK (4 queries)
39 Correct 1 ms 208 KB OK (5 queries)
40 Correct 0 ms 208 KB OK (6 queries)
41 Correct 1 ms 208 KB OK (6 queries)
42 Correct 0 ms 208 KB OK (2 queries)
43 Correct 0 ms 208 KB OK (3 queries)
44 Correct 1 ms 320 KB OK (4 queries)
45 Correct 1 ms 208 KB OK (5 queries)
46 Correct 0 ms 208 KB OK (6 queries)
47 Correct 0 ms 208 KB OK (7 queries)
48 Correct 1 ms 208 KB OK (7 queries)
49 Correct 1 ms 208 KB OK (2 queries)
50 Correct 0 ms 208 KB OK (3 queries)
51 Correct 1 ms 208 KB OK (4 queries)
52 Correct 1 ms 208 KB OK (5 queries)
53 Correct 0 ms 208 KB OK (6 queries)
54 Correct 0 ms 208 KB OK (7 queries)
55 Correct 0 ms 208 KB OK (8 queries)
56 Correct 1 ms 208 KB OK (8 queries)
57 Correct 0 ms 208 KB OK (3 queries)
58 Correct 0 ms 208 KB OK (2 queries)
59 Correct 1 ms 208 KB OK (4 queries)
60 Correct 0 ms 208 KB OK (3 queries)
61 Correct 0 ms 208 KB OK (3 queries)
62 Correct 0 ms 208 KB OK (4 queries)
63 Correct 0 ms 208 KB OK (3 queries)
64 Correct 0 ms 208 KB OK (5 queries)
65 Incorrect 1 ms 208 KB Hair color 31 was used multiple times
66 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 1 ms 208 KB OK (5 queries)
2 Correct 1 ms 208 KB OK (7 queries)
3 Correct 1 ms 208 KB OK (10 queries)
4 Correct 1 ms 208 KB OK (26 queries)
5 Correct 1 ms 208 KB OK (13 queries)
6 Correct 1 ms 208 KB OK (27 queries)
7 Correct 1 ms 208 KB OK (18 queries)
8 Correct 1 ms 208 KB OK (8 queries)
9 Correct 1 ms 208 KB OK (10 queries)
10 Correct 1 ms 208 KB OK (11 queries)
11 Correct 1 ms 208 KB OK (4 queries)
12 Correct 0 ms 208 KB OK (5 queries)
13 Correct 1 ms 208 KB OK (12 queries)
14 Correct 1 ms 208 KB OK (17 queries)
15 Correct 1 ms 208 KB OK (12 queries)
16 Correct 1 ms 208 KB OK (8 queries)
17 Correct 1 ms 208 KB OK (3 queries)
18 Correct 1 ms 208 KB OK (17 queries)
19 Correct 0 ms 208 KB OK (3 queries)
20 Correct 1 ms 208 KB OK (33 queries)
21 Correct 1 ms 208 KB OK (10 queries)
22 Correct 0 ms 208 KB OK (2 queries)
23 Correct 0 ms 208 KB OK (2 queries)
24 Correct 1 ms 208 KB OK (2 queries)
25 Correct 1 ms 208 KB OK (3 queries)
26 Correct 1 ms 208 KB OK (3 queries)
27 Correct 1 ms 208 KB OK (2 queries)
28 Correct 0 ms 208 KB OK (3 queries)
29 Correct 1 ms 208 KB OK (4 queries)
30 Correct 1 ms 208 KB OK (4 queries)
31 Correct 1 ms 208 KB OK (2 queries)
32 Correct 1 ms 208 KB OK (3 queries)
33 Correct 0 ms 208 KB OK (4 queries)
34 Correct 1 ms 208 KB OK (5 queries)
35 Correct 1 ms 208 KB OK (5 queries)
36 Correct 0 ms 208 KB OK (2 queries)
37 Correct 1 ms 208 KB OK (3 queries)
38 Correct 0 ms 208 KB OK (4 queries)
39 Correct 1 ms 208 KB OK (5 queries)
40 Correct 0 ms 208 KB OK (6 queries)
41 Correct 1 ms 208 KB OK (6 queries)
42 Correct 0 ms 208 KB OK (2 queries)
43 Correct 0 ms 208 KB OK (3 queries)
44 Correct 1 ms 320 KB OK (4 queries)
45 Correct 1 ms 208 KB OK (5 queries)
46 Correct 0 ms 208 KB OK (6 queries)
47 Correct 0 ms 208 KB OK (7 queries)
48 Correct 1 ms 208 KB OK (7 queries)
49 Correct 1 ms 208 KB OK (2 queries)
50 Correct 0 ms 208 KB OK (3 queries)
51 Correct 1 ms 208 KB OK (4 queries)
52 Correct 1 ms 208 KB OK (5 queries)
53 Correct 0 ms 208 KB OK (6 queries)
54 Correct 0 ms 208 KB OK (7 queries)
55 Correct 0 ms 208 KB OK (8 queries)
56 Correct 1 ms 208 KB OK (8 queries)
57 Correct 0 ms 208 KB OK (3 queries)
58 Correct 0 ms 208 KB OK (2 queries)
59 Correct 1 ms 208 KB OK (4 queries)
60 Correct 0 ms 208 KB OK (3 queries)
61 Correct 0 ms 208 KB OK (3 queries)
62 Correct 0 ms 208 KB OK (4 queries)
63 Correct 0 ms 208 KB OK (3 queries)
64 Correct 0 ms 208 KB OK (5 queries)
65 Incorrect 1 ms 208 KB Hair color 31 was used multiple times
66 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 1 ms 208 KB OK (5 queries)
2 Correct 1 ms 208 KB OK (7 queries)
3 Correct 1 ms 208 KB OK (10 queries)
4 Correct 1 ms 208 KB OK (26 queries)
5 Correct 1 ms 208 KB OK (13 queries)
6 Correct 1 ms 208 KB OK (27 queries)
7 Correct 1 ms 208 KB OK (18 queries)
8 Correct 1 ms 208 KB OK (8 queries)
9 Correct 1 ms 208 KB OK (10 queries)
10 Correct 1 ms 208 KB OK (11 queries)
11 Correct 1 ms 208 KB OK (4 queries)
12 Correct 0 ms 208 KB OK (5 queries)
13 Correct 1 ms 208 KB OK (12 queries)
14 Correct 1 ms 208 KB OK (17 queries)
15 Correct 1 ms 208 KB OK (12 queries)
16 Correct 1 ms 208 KB OK (8 queries)
17 Correct 1 ms 208 KB OK (3 queries)
18 Correct 1 ms 208 KB OK (17 queries)
19 Correct 0 ms 208 KB OK (3 queries)
20 Correct 1 ms 208 KB OK (33 queries)
21 Correct 1 ms 208 KB OK (10 queries)
22 Correct 0 ms 208 KB OK (2 queries)
23 Correct 0 ms 208 KB OK (2 queries)
24 Correct 1 ms 208 KB OK (2 queries)
25 Correct 1 ms 208 KB OK (3 queries)
26 Correct 1 ms 208 KB OK (3 queries)
27 Correct 1 ms 208 KB OK (2 queries)
28 Correct 0 ms 208 KB OK (3 queries)
29 Correct 1 ms 208 KB OK (4 queries)
30 Correct 1 ms 208 KB OK (4 queries)
31 Correct 1 ms 208 KB OK (2 queries)
32 Correct 1 ms 208 KB OK (3 queries)
33 Correct 0 ms 208 KB OK (4 queries)
34 Correct 1 ms 208 KB OK (5 queries)
35 Correct 1 ms 208 KB OK (5 queries)
36 Correct 0 ms 208 KB OK (2 queries)
37 Correct 1 ms 208 KB OK (3 queries)
38 Correct 0 ms 208 KB OK (4 queries)
39 Correct 1 ms 208 KB OK (5 queries)
40 Correct 0 ms 208 KB OK (6 queries)
41 Correct 1 ms 208 KB OK (6 queries)
42 Correct 0 ms 208 KB OK (2 queries)
43 Correct 0 ms 208 KB OK (3 queries)
44 Correct 1 ms 320 KB OK (4 queries)
45 Correct 1 ms 208 KB OK (5 queries)
46 Correct 0 ms 208 KB OK (6 queries)
47 Correct 0 ms 208 KB OK (7 queries)
48 Correct 1 ms 208 KB OK (7 queries)
49 Correct 1 ms 208 KB OK (2 queries)
50 Correct 0 ms 208 KB OK (3 queries)
51 Correct 1 ms 208 KB OK (4 queries)
52 Correct 1 ms 208 KB OK (5 queries)
53 Correct 0 ms 208 KB OK (6 queries)
54 Correct 0 ms 208 KB OK (7 queries)
55 Correct 0 ms 208 KB OK (8 queries)
56 Correct 1 ms 208 KB OK (8 queries)
57 Correct 0 ms 208 KB OK (3 queries)
58 Correct 0 ms 208 KB OK (2 queries)
59 Correct 1 ms 208 KB OK (4 queries)
60 Correct 0 ms 208 KB OK (3 queries)
61 Correct 0 ms 208 KB OK (3 queries)
62 Correct 0 ms 208 KB OK (4 queries)
63 Correct 0 ms 208 KB OK (3 queries)
64 Correct 0 ms 208 KB OK (5 queries)
65 Incorrect 1 ms 208 KB Hair color 31 was used multiple times
66 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 1 ms 208 KB OK (5 queries)
2 Correct 1 ms 208 KB OK (7 queries)
3 Correct 1 ms 208 KB OK (10 queries)
4 Correct 1 ms 208 KB OK (26 queries)
5 Correct 1 ms 208 KB OK (13 queries)
6 Correct 1 ms 208 KB OK (27 queries)
7 Correct 1 ms 208 KB OK (18 queries)
8 Correct 1 ms 208 KB OK (8 queries)
9 Correct 1 ms 208 KB OK (10 queries)
10 Correct 1 ms 208 KB OK (11 queries)
11 Correct 1 ms 208 KB OK (4 queries)
12 Correct 0 ms 208 KB OK (5 queries)
13 Correct 1 ms 208 KB OK (12 queries)
14 Correct 1 ms 208 KB OK (17 queries)
15 Correct 1 ms 208 KB OK (12 queries)
16 Correct 1 ms 208 KB OK (8 queries)
17 Correct 1 ms 208 KB OK (3 queries)
18 Correct 1 ms 208 KB OK (17 queries)
19 Correct 0 ms 208 KB OK (3 queries)
20 Correct 1 ms 208 KB OK (33 queries)
21 Correct 1 ms 208 KB OK (10 queries)
22 Correct 0 ms 208 KB OK (2 queries)
23 Correct 0 ms 208 KB OK (2 queries)
24 Correct 1 ms 208 KB OK (2 queries)
25 Correct 1 ms 208 KB OK (3 queries)
26 Correct 1 ms 208 KB OK (3 queries)
27 Correct 1 ms 208 KB OK (2 queries)
28 Correct 0 ms 208 KB OK (3 queries)
29 Correct 1 ms 208 KB OK (4 queries)
30 Correct 1 ms 208 KB OK (4 queries)
31 Correct 1 ms 208 KB OK (2 queries)
32 Correct 1 ms 208 KB OK (3 queries)
33 Correct 0 ms 208 KB OK (4 queries)
34 Correct 1 ms 208 KB OK (5 queries)
35 Correct 1 ms 208 KB OK (5 queries)
36 Correct 0 ms 208 KB OK (2 queries)
37 Correct 1 ms 208 KB OK (3 queries)
38 Correct 0 ms 208 KB OK (4 queries)
39 Correct 1 ms 208 KB OK (5 queries)
40 Correct 0 ms 208 KB OK (6 queries)
41 Correct 1 ms 208 KB OK (6 queries)
42 Correct 0 ms 208 KB OK (2 queries)
43 Correct 0 ms 208 KB OK (3 queries)
44 Correct 1 ms 320 KB OK (4 queries)
45 Correct 1 ms 208 KB OK (5 queries)
46 Correct 0 ms 208 KB OK (6 queries)
47 Correct 0 ms 208 KB OK (7 queries)
48 Correct 1 ms 208 KB OK (7 queries)
49 Correct 1 ms 208 KB OK (2 queries)
50 Correct 0 ms 208 KB OK (3 queries)
51 Correct 1 ms 208 KB OK (4 queries)
52 Correct 1 ms 208 KB OK (5 queries)
53 Correct 0 ms 208 KB OK (6 queries)
54 Correct 0 ms 208 KB OK (7 queries)
55 Correct 0 ms 208 KB OK (8 queries)
56 Correct 1 ms 208 KB OK (8 queries)
57 Correct 0 ms 208 KB OK (3 queries)
58 Correct 0 ms 208 KB OK (2 queries)
59 Correct 1 ms 208 KB OK (4 queries)
60 Correct 0 ms 208 KB OK (3 queries)
61 Correct 0 ms 208 KB OK (3 queries)
62 Correct 0 ms 208 KB OK (4 queries)
63 Correct 0 ms 208 KB OK (3 queries)
64 Correct 0 ms 208 KB OK (5 queries)
65 Incorrect 1 ms 208 KB Hair color 31 was used multiple times
66 Halted 0 ms 0 KB -