Submission #951348

# Submission time Handle Problem Language Result Execution time Memory
951348 2024-03-21T16:20:42 Z temmieowo Colors (BOI20_colors) C++14
9 / 100
1 ms 596 KB
#include <bits/stdc++.h>
#define int long long
using namespace std;

const int MAX_N = 5e5+10;
const int INF = 2e18;

int cnt = 0;
int n;
set<int> ss;

int ask(int p){
    if (ss.find(p)!=ss.end()){
        cerr << p << "被用過了\n";
        assert(0);
    }
    ss.insert(p);
    if (cnt==64){
        cout << "問太多次了\n";
        assert(0);
    }
    cnt++;

    cout << "? " << p << endl;

    int res;
    cin >> res;
    return res;
}

void answer(int p){
    cout << "= " << p << endl;
    exit(0);
    return;
}

void solve2(){
    int ll = 1, rr = n;
    while (ll<=rr){
        if (ask(ll)==0 && ll!=1){
            answer(rr-ll+2);
        }
        ll++;

        if (!(ll<=rr)){
            break;
        }

        if (ask(rr)==0){
            answer(rr-ll+2);
        }
        rr--;
    }
    answer(1);
    return;
}

void solve1(){

    // input
    cin >> n;

    // process
    if (n<=64){
        solve2();
    }

    int ll = 1, rr = n+1, ans = rr;
    int now = 1;
    while (ll<rr){
        int mid = (ll+rr)/2;

        int xx = 1;
        int yy = 1;

        ask(xx);
        int res = ask(yy);

        if (res==1){
            ans = mid;
            rr = mid;
        }else{
            ll = mid+1;
        }

        now++;
    }
    answer(ans);

    return;
}

signed main(){

    int t = 1;
    while (t--){
        solve1();
    }

    return 0;
}
# Verdict Execution time Memory Grader output
1 Correct 1 ms 344 KB OK (5 queries)
2 Correct 0 ms 344 KB OK (6 queries)
3 Correct 0 ms 344 KB OK (10 queries)
4 Correct 0 ms 344 KB OK (26 queries)
5 Correct 1 ms 344 KB OK (13 queries)
6 Correct 0 ms 344 KB OK (26 queries)
7 Correct 0 ms 344 KB OK (17 queries)
8 Correct 1 ms 344 KB OK (7 queries)
9 Correct 1 ms 344 KB OK (9 queries)
10 Correct 0 ms 344 KB OK (11 queries)
11 Correct 0 ms 344 KB OK (4 queries)
12 Correct 0 ms 344 KB OK (5 queries)
13 Correct 0 ms 344 KB OK (11 queries)
14 Correct 0 ms 596 KB OK (16 queries)
15 Correct 0 ms 404 KB OK (11 queries)
16 Correct 0 ms 344 KB OK (34 queries)
17 Correct 0 ms 344 KB OK (2 queries)
18 Correct 1 ms 344 KB OK (16 queries)
19 Correct 0 ms 344 KB OK (3 queries)
20 Correct 1 ms 344 KB OK (31 queries)
21 Correct 1 ms 344 KB OK (9 queries)
22 Correct 0 ms 344 KB OK (2 queries)
23 Correct 0 ms 344 KB OK (2 queries)
24 Correct 0 ms 344 KB OK (2 queries)
25 Correct 0 ms 344 KB OK (3 queries)
26 Correct 0 ms 344 KB OK (3 queries)
27 Correct 0 ms 344 KB OK (2 queries)
28 Correct 0 ms 344 KB OK (3 queries)
29 Correct 0 ms 344 KB OK (4 queries)
30 Correct 0 ms 344 KB OK (4 queries)
31 Correct 0 ms 344 KB OK (2 queries)
32 Correct 0 ms 344 KB OK (3 queries)
33 Correct 0 ms 344 KB OK (4 queries)
34 Correct 0 ms 344 KB OK (5 queries)
35 Correct 1 ms 344 KB OK (5 queries)
36 Correct 0 ms 344 KB OK (2 queries)
37 Correct 0 ms 344 KB OK (3 queries)
38 Correct 0 ms 344 KB OK (4 queries)
39 Correct 0 ms 344 KB OK (5 queries)
40 Correct 0 ms 344 KB OK (6 queries)
41 Correct 0 ms 344 KB OK (6 queries)
42 Correct 1 ms 344 KB OK (2 queries)
43 Correct 1 ms 344 KB OK (3 queries)
44 Correct 0 ms 344 KB OK (4 queries)
45 Correct 1 ms 344 KB OK (5 queries)
46 Correct 0 ms 344 KB OK (6 queries)
47 Correct 0 ms 344 KB OK (7 queries)
48 Correct 1 ms 344 KB OK (7 queries)
49 Correct 0 ms 344 KB OK (2 queries)
50 Correct 1 ms 344 KB OK (3 queries)
51 Correct 1 ms 340 KB OK (4 queries)
52 Correct 0 ms 344 KB OK (5 queries)
53 Correct 0 ms 344 KB OK (6 queries)
54 Correct 1 ms 344 KB OK (7 queries)
55 Correct 0 ms 344 KB OK (8 queries)
56 Correct 0 ms 344 KB OK (8 queries)
57 Correct 1 ms 344 KB OK (3 queries)
58 Correct 0 ms 344 KB OK (2 queries)
59 Correct 0 ms 344 KB OK (3 queries)
60 Correct 0 ms 344 KB OK (2 queries)
61 Correct 0 ms 436 KB OK (63 queries)
62 Correct 0 ms 344 KB OK (2 queries)
63 Correct 1 ms 432 KB OK (63 queries)
64 Correct 1 ms 344 KB OK (3 queries)
65 Correct 1 ms 436 KB OK (62 queries)
66 Correct 0 ms 344 KB OK (4 queries)
67 Correct 1 ms 432 KB OK (61 queries)
68 Correct 0 ms 344 KB OK (5 queries)
69 Correct 1 ms 436 KB OK (60 queries)
70 Correct 0 ms 344 KB OK (6 queries)
# Verdict Execution time Memory Grader output
1 Correct 1 ms 344 KB OK (5 queries)
2 Correct 0 ms 344 KB OK (6 queries)
3 Correct 0 ms 344 KB OK (10 queries)
4 Correct 0 ms 344 KB OK (26 queries)
5 Correct 1 ms 344 KB OK (13 queries)
6 Correct 0 ms 344 KB OK (26 queries)
7 Correct 0 ms 344 KB OK (17 queries)
8 Correct 1 ms 344 KB OK (7 queries)
9 Correct 1 ms 344 KB OK (9 queries)
10 Correct 0 ms 344 KB OK (11 queries)
11 Correct 0 ms 344 KB OK (4 queries)
12 Correct 0 ms 344 KB OK (5 queries)
13 Correct 0 ms 344 KB OK (11 queries)
14 Correct 0 ms 596 KB OK (16 queries)
15 Correct 0 ms 404 KB OK (11 queries)
16 Correct 0 ms 344 KB OK (34 queries)
17 Correct 0 ms 344 KB OK (2 queries)
18 Correct 1 ms 344 KB OK (16 queries)
19 Correct 0 ms 344 KB OK (3 queries)
20 Correct 1 ms 344 KB OK (31 queries)
21 Correct 1 ms 344 KB OK (9 queries)
22 Correct 0 ms 344 KB OK (2 queries)
23 Correct 0 ms 344 KB OK (2 queries)
24 Correct 0 ms 344 KB OK (2 queries)
25 Correct 0 ms 344 KB OK (3 queries)
26 Correct 0 ms 344 KB OK (3 queries)
27 Correct 0 ms 344 KB OK (2 queries)
28 Correct 0 ms 344 KB OK (3 queries)
29 Correct 0 ms 344 KB OK (4 queries)
30 Correct 0 ms 344 KB OK (4 queries)
31 Correct 0 ms 344 KB OK (2 queries)
32 Correct 0 ms 344 KB OK (3 queries)
33 Correct 0 ms 344 KB OK (4 queries)
34 Correct 0 ms 344 KB OK (5 queries)
35 Correct 1 ms 344 KB OK (5 queries)
36 Correct 0 ms 344 KB OK (2 queries)
37 Correct 0 ms 344 KB OK (3 queries)
38 Correct 0 ms 344 KB OK (4 queries)
39 Correct 0 ms 344 KB OK (5 queries)
40 Correct 0 ms 344 KB OK (6 queries)
41 Correct 0 ms 344 KB OK (6 queries)
42 Correct 1 ms 344 KB OK (2 queries)
43 Correct 1 ms 344 KB OK (3 queries)
44 Correct 0 ms 344 KB OK (4 queries)
45 Correct 1 ms 344 KB OK (5 queries)
46 Correct 0 ms 344 KB OK (6 queries)
47 Correct 0 ms 344 KB OK (7 queries)
48 Correct 1 ms 344 KB OK (7 queries)
49 Correct 0 ms 344 KB OK (2 queries)
50 Correct 1 ms 344 KB OK (3 queries)
51 Correct 1 ms 340 KB OK (4 queries)
52 Correct 0 ms 344 KB OK (5 queries)
53 Correct 0 ms 344 KB OK (6 queries)
54 Correct 1 ms 344 KB OK (7 queries)
55 Correct 0 ms 344 KB OK (8 queries)
56 Correct 0 ms 344 KB OK (8 queries)
57 Correct 1 ms 344 KB OK (3 queries)
58 Correct 0 ms 344 KB OK (2 queries)
59 Correct 0 ms 344 KB OK (3 queries)
60 Correct 0 ms 344 KB OK (2 queries)
61 Correct 0 ms 436 KB OK (63 queries)
62 Correct 0 ms 344 KB OK (2 queries)
63 Correct 1 ms 432 KB OK (63 queries)
64 Correct 1 ms 344 KB OK (3 queries)
65 Correct 1 ms 436 KB OK (62 queries)
66 Correct 0 ms 344 KB OK (4 queries)
67 Correct 1 ms 432 KB OK (61 queries)
68 Correct 0 ms 344 KB OK (5 queries)
69 Correct 1 ms 436 KB OK (60 queries)
70 Correct 0 ms 344 KB OK (6 queries)
71 Runtime error 1 ms 428 KB Execution killed with signal 6
72 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 1 ms 344 KB OK (5 queries)
2 Correct 0 ms 344 KB OK (6 queries)
3 Correct 0 ms 344 KB OK (10 queries)
4 Correct 0 ms 344 KB OK (26 queries)
5 Correct 1 ms 344 KB OK (13 queries)
6 Correct 0 ms 344 KB OK (26 queries)
7 Correct 0 ms 344 KB OK (17 queries)
8 Correct 1 ms 344 KB OK (7 queries)
9 Correct 1 ms 344 KB OK (9 queries)
10 Correct 0 ms 344 KB OK (11 queries)
11 Correct 0 ms 344 KB OK (4 queries)
12 Correct 0 ms 344 KB OK (5 queries)
13 Correct 0 ms 344 KB OK (11 queries)
14 Correct 0 ms 596 KB OK (16 queries)
15 Correct 0 ms 404 KB OK (11 queries)
16 Correct 0 ms 344 KB OK (34 queries)
17 Correct 0 ms 344 KB OK (2 queries)
18 Correct 1 ms 344 KB OK (16 queries)
19 Correct 0 ms 344 KB OK (3 queries)
20 Correct 1 ms 344 KB OK (31 queries)
21 Correct 1 ms 344 KB OK (9 queries)
22 Correct 0 ms 344 KB OK (2 queries)
23 Correct 0 ms 344 KB OK (2 queries)
24 Correct 0 ms 344 KB OK (2 queries)
25 Correct 0 ms 344 KB OK (3 queries)
26 Correct 0 ms 344 KB OK (3 queries)
27 Correct 0 ms 344 KB OK (2 queries)
28 Correct 0 ms 344 KB OK (3 queries)
29 Correct 0 ms 344 KB OK (4 queries)
30 Correct 0 ms 344 KB OK (4 queries)
31 Correct 0 ms 344 KB OK (2 queries)
32 Correct 0 ms 344 KB OK (3 queries)
33 Correct 0 ms 344 KB OK (4 queries)
34 Correct 0 ms 344 KB OK (5 queries)
35 Correct 1 ms 344 KB OK (5 queries)
36 Correct 0 ms 344 KB OK (2 queries)
37 Correct 0 ms 344 KB OK (3 queries)
38 Correct 0 ms 344 KB OK (4 queries)
39 Correct 0 ms 344 KB OK (5 queries)
40 Correct 0 ms 344 KB OK (6 queries)
41 Correct 0 ms 344 KB OK (6 queries)
42 Correct 1 ms 344 KB OK (2 queries)
43 Correct 1 ms 344 KB OK (3 queries)
44 Correct 0 ms 344 KB OK (4 queries)
45 Correct 1 ms 344 KB OK (5 queries)
46 Correct 0 ms 344 KB OK (6 queries)
47 Correct 0 ms 344 KB OK (7 queries)
48 Correct 1 ms 344 KB OK (7 queries)
49 Correct 0 ms 344 KB OK (2 queries)
50 Correct 1 ms 344 KB OK (3 queries)
51 Correct 1 ms 340 KB OK (4 queries)
52 Correct 0 ms 344 KB OK (5 queries)
53 Correct 0 ms 344 KB OK (6 queries)
54 Correct 1 ms 344 KB OK (7 queries)
55 Correct 0 ms 344 KB OK (8 queries)
56 Correct 0 ms 344 KB OK (8 queries)
57 Correct 1 ms 344 KB OK (3 queries)
58 Correct 0 ms 344 KB OK (2 queries)
59 Correct 0 ms 344 KB OK (3 queries)
60 Correct 0 ms 344 KB OK (2 queries)
61 Correct 0 ms 436 KB OK (63 queries)
62 Correct 0 ms 344 KB OK (2 queries)
63 Correct 1 ms 432 KB OK (63 queries)
64 Correct 1 ms 344 KB OK (3 queries)
65 Correct 1 ms 436 KB OK (62 queries)
66 Correct 0 ms 344 KB OK (4 queries)
67 Correct 1 ms 432 KB OK (61 queries)
68 Correct 0 ms 344 KB OK (5 queries)
69 Correct 1 ms 436 KB OK (60 queries)
70 Correct 0 ms 344 KB OK (6 queries)
71 Runtime error 1 ms 428 KB Execution killed with signal 6
72 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 1 ms 344 KB OK (5 queries)
2 Correct 0 ms 344 KB OK (6 queries)
3 Correct 0 ms 344 KB OK (10 queries)
4 Correct 0 ms 344 KB OK (26 queries)
5 Correct 1 ms 344 KB OK (13 queries)
6 Correct 0 ms 344 KB OK (26 queries)
7 Correct 0 ms 344 KB OK (17 queries)
8 Correct 1 ms 344 KB OK (7 queries)
9 Correct 1 ms 344 KB OK (9 queries)
10 Correct 0 ms 344 KB OK (11 queries)
11 Correct 0 ms 344 KB OK (4 queries)
12 Correct 0 ms 344 KB OK (5 queries)
13 Correct 0 ms 344 KB OK (11 queries)
14 Correct 0 ms 596 KB OK (16 queries)
15 Correct 0 ms 404 KB OK (11 queries)
16 Correct 0 ms 344 KB OK (34 queries)
17 Correct 0 ms 344 KB OK (2 queries)
18 Correct 1 ms 344 KB OK (16 queries)
19 Correct 0 ms 344 KB OK (3 queries)
20 Correct 1 ms 344 KB OK (31 queries)
21 Correct 1 ms 344 KB OK (9 queries)
22 Correct 0 ms 344 KB OK (2 queries)
23 Correct 0 ms 344 KB OK (2 queries)
24 Correct 0 ms 344 KB OK (2 queries)
25 Correct 0 ms 344 KB OK (3 queries)
26 Correct 0 ms 344 KB OK (3 queries)
27 Correct 0 ms 344 KB OK (2 queries)
28 Correct 0 ms 344 KB OK (3 queries)
29 Correct 0 ms 344 KB OK (4 queries)
30 Correct 0 ms 344 KB OK (4 queries)
31 Correct 0 ms 344 KB OK (2 queries)
32 Correct 0 ms 344 KB OK (3 queries)
33 Correct 0 ms 344 KB OK (4 queries)
34 Correct 0 ms 344 KB OK (5 queries)
35 Correct 1 ms 344 KB OK (5 queries)
36 Correct 0 ms 344 KB OK (2 queries)
37 Correct 0 ms 344 KB OK (3 queries)
38 Correct 0 ms 344 KB OK (4 queries)
39 Correct 0 ms 344 KB OK (5 queries)
40 Correct 0 ms 344 KB OK (6 queries)
41 Correct 0 ms 344 KB OK (6 queries)
42 Correct 1 ms 344 KB OK (2 queries)
43 Correct 1 ms 344 KB OK (3 queries)
44 Correct 0 ms 344 KB OK (4 queries)
45 Correct 1 ms 344 KB OK (5 queries)
46 Correct 0 ms 344 KB OK (6 queries)
47 Correct 0 ms 344 KB OK (7 queries)
48 Correct 1 ms 344 KB OK (7 queries)
49 Correct 0 ms 344 KB OK (2 queries)
50 Correct 1 ms 344 KB OK (3 queries)
51 Correct 1 ms 340 KB OK (4 queries)
52 Correct 0 ms 344 KB OK (5 queries)
53 Correct 0 ms 344 KB OK (6 queries)
54 Correct 1 ms 344 KB OK (7 queries)
55 Correct 0 ms 344 KB OK (8 queries)
56 Correct 0 ms 344 KB OK (8 queries)
57 Correct 1 ms 344 KB OK (3 queries)
58 Correct 0 ms 344 KB OK (2 queries)
59 Correct 0 ms 344 KB OK (3 queries)
60 Correct 0 ms 344 KB OK (2 queries)
61 Correct 0 ms 436 KB OK (63 queries)
62 Correct 0 ms 344 KB OK (2 queries)
63 Correct 1 ms 432 KB OK (63 queries)
64 Correct 1 ms 344 KB OK (3 queries)
65 Correct 1 ms 436 KB OK (62 queries)
66 Correct 0 ms 344 KB OK (4 queries)
67 Correct 1 ms 432 KB OK (61 queries)
68 Correct 0 ms 344 KB OK (5 queries)
69 Correct 1 ms 436 KB OK (60 queries)
70 Correct 0 ms 344 KB OK (6 queries)
71 Runtime error 1 ms 428 KB Execution killed with signal 6
72 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 1 ms 344 KB OK (5 queries)
2 Correct 0 ms 344 KB OK (6 queries)
3 Correct 0 ms 344 KB OK (10 queries)
4 Correct 0 ms 344 KB OK (26 queries)
5 Correct 1 ms 344 KB OK (13 queries)
6 Correct 0 ms 344 KB OK (26 queries)
7 Correct 0 ms 344 KB OK (17 queries)
8 Correct 1 ms 344 KB OK (7 queries)
9 Correct 1 ms 344 KB OK (9 queries)
10 Correct 0 ms 344 KB OK (11 queries)
11 Correct 0 ms 344 KB OK (4 queries)
12 Correct 0 ms 344 KB OK (5 queries)
13 Correct 0 ms 344 KB OK (11 queries)
14 Correct 0 ms 596 KB OK (16 queries)
15 Correct 0 ms 404 KB OK (11 queries)
16 Correct 0 ms 344 KB OK (34 queries)
17 Correct 0 ms 344 KB OK (2 queries)
18 Correct 1 ms 344 KB OK (16 queries)
19 Correct 0 ms 344 KB OK (3 queries)
20 Correct 1 ms 344 KB OK (31 queries)
21 Correct 1 ms 344 KB OK (9 queries)
22 Correct 0 ms 344 KB OK (2 queries)
23 Correct 0 ms 344 KB OK (2 queries)
24 Correct 0 ms 344 KB OK (2 queries)
25 Correct 0 ms 344 KB OK (3 queries)
26 Correct 0 ms 344 KB OK (3 queries)
27 Correct 0 ms 344 KB OK (2 queries)
28 Correct 0 ms 344 KB OK (3 queries)
29 Correct 0 ms 344 KB OK (4 queries)
30 Correct 0 ms 344 KB OK (4 queries)
31 Correct 0 ms 344 KB OK (2 queries)
32 Correct 0 ms 344 KB OK (3 queries)
33 Correct 0 ms 344 KB OK (4 queries)
34 Correct 0 ms 344 KB OK (5 queries)
35 Correct 1 ms 344 KB OK (5 queries)
36 Correct 0 ms 344 KB OK (2 queries)
37 Correct 0 ms 344 KB OK (3 queries)
38 Correct 0 ms 344 KB OK (4 queries)
39 Correct 0 ms 344 KB OK (5 queries)
40 Correct 0 ms 344 KB OK (6 queries)
41 Correct 0 ms 344 KB OK (6 queries)
42 Correct 1 ms 344 KB OK (2 queries)
43 Correct 1 ms 344 KB OK (3 queries)
44 Correct 0 ms 344 KB OK (4 queries)
45 Correct 1 ms 344 KB OK (5 queries)
46 Correct 0 ms 344 KB OK (6 queries)
47 Correct 0 ms 344 KB OK (7 queries)
48 Correct 1 ms 344 KB OK (7 queries)
49 Correct 0 ms 344 KB OK (2 queries)
50 Correct 1 ms 344 KB OK (3 queries)
51 Correct 1 ms 340 KB OK (4 queries)
52 Correct 0 ms 344 KB OK (5 queries)
53 Correct 0 ms 344 KB OK (6 queries)
54 Correct 1 ms 344 KB OK (7 queries)
55 Correct 0 ms 344 KB OK (8 queries)
56 Correct 0 ms 344 KB OK (8 queries)
57 Correct 1 ms 344 KB OK (3 queries)
58 Correct 0 ms 344 KB OK (2 queries)
59 Correct 0 ms 344 KB OK (3 queries)
60 Correct 0 ms 344 KB OK (2 queries)
61 Correct 0 ms 436 KB OK (63 queries)
62 Correct 0 ms 344 KB OK (2 queries)
63 Correct 1 ms 432 KB OK (63 queries)
64 Correct 1 ms 344 KB OK (3 queries)
65 Correct 1 ms 436 KB OK (62 queries)
66 Correct 0 ms 344 KB OK (4 queries)
67 Correct 1 ms 432 KB OK (61 queries)
68 Correct 0 ms 344 KB OK (5 queries)
69 Correct 1 ms 436 KB OK (60 queries)
70 Correct 0 ms 344 KB OK (6 queries)
71 Runtime error 1 ms 428 KB Execution killed with signal 6
72 Halted 0 ms 0 KB -