QOJ.ac

QOJ

IDProblemSubmitterResultTimeMemoryLanguageFile sizeSubmit timeJudge time
#218875#6394. Turn on the Lighttherehello#WA 1ms3708kbC++201.1kb2023-10-18 19:44:372023-10-18 19:44:38

Judging History

你现在查看的是最新测评结果

  • [2023-10-18 19:44:38]
  • 评测
  • 测评结果:WA
  • 用时:1ms
  • 内存:3708kb
  • [2023-10-18 19:44:37]
  • 提交

answer

#include <bits/stdc++.h>
using namespace std;

using ll = long long;
using i64 = long long;

void solve() {
    int n;
    cin >> n;
    int l = 1, r = n;
    int cnt = 0;
    auto ask = [&](int x) {
        cnt++;
        assert(cnt <= 40);
        cout << "? " << x << endl;
        int ret;
        cin >> ret;
        return ret;
    };
    auto submit = [&](int x) { cout << "! " << x << endl; };
    int v = 0;
    for (; l < r;) {
        int mid = l + r >> 1;
        int v1 = ask(mid);
        if (v1 == v) {
            submit(mid);
            return;
        }
        if (l + 1 == r) {
            submit(r);
            return;
        }
        int v2 = ask(l);
        if (v2 == v1) {
            submit(l);
            return;
        }
        if (v2 == v) {
            r = mid - 1;
        } else {
            l = mid + 1;
        }
        v = v2;
    }
    submit(l);
}

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

    int t = 1;
    // cin >> t;
    while (t--) {
        solve();
    }
    return 0;
}

Details

Tip: Click on the bar to expand more detailed information

Test #1:

score: 100
Accepted
time: 1ms
memory: 3616kb

input:

3
1
2

output:

? 2
? 1
! 3

result:

ok Correct position at 3

Test #2:

score: 0
Accepted
time: 0ms
memory: 3704kb

input:

10
1
2
3
4
5

output:

? 5
? 1
? 8
? 6
? 9
! 10

result:

ok Correct position at 10

Test #3:

score: 0
Accepted
time: 1ms
memory: 3612kb

input:

9
1
2
3
4
5

output:

? 5
? 1
? 7
? 6
? 8
! 9

result:

ok Correct position at 9

Test #4:

score: 0
Accepted
time: 1ms
memory: 3680kb

input:

8
1
2
3
4
5

output:

? 4
? 1
? 6
? 5
? 7
! 8

result:

ok Correct position at 8

Test #5:

score: 0
Accepted
time: 1ms
memory: 3708kb

input:

7
1
2
3
4

output:

? 4
? 1
? 6
? 5
! 7

result:

ok Correct position at 7

Test #6:

score: 0
Accepted
time: 1ms
memory: 3640kb

input:

6
1
2
3
4

output:

? 3
? 1
? 5
? 4
! 6

result:

ok Correct position at 6

Test #7:

score: 0
Accepted
time: 0ms
memory: 3576kb

input:

5
1
2
3

output:

? 3
? 1
? 4
! 5

result:

ok Correct position at 5

Test #8:

score: 0
Accepted
time: 1ms
memory: 3628kb

input:

4
1
2
3

output:

? 2
? 1
? 3
! 4

result:

ok Correct position at 4

Test #9:

score: 0
Accepted
time: 1ms
memory: 3700kb

input:

3
1
1

output:

? 2
? 1
! 1

result:

ok Correct position at 1

Test #10:

score: 0
Accepted
time: 1ms
memory: 3700kb

input:

2
1

output:

? 1
! 2

result:

ok Correct position at 2

Test #11:

score: 0
Accepted
time: 0ms
memory: 3612kb

input:

1

output:

! 1

result:

ok Correct position at 1

Test #12:

score: -100
Wrong Answer
time: 1ms
memory: 3624kb

input:

1000000
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
31
32
33
33

output:

? 500000
? 1
? 750000
? 500001
? 875000
? 750001
? 937500
? 875001
? 968750
? 937501
? 984375
? 968751
? 992188
? 984376
? 996094
? 992189
? 998047
? 996095
? 999024
? 998048
? 999512
? 999025
? 999756
? 999513
? 999878
? 999757
? 999939
? 999879
? 999970
? 999940
? 999985
? 999971
? 999993
? 999986...

result:

wrong answer Wrong answer, more than 1 possible light!