QOJ.ac

QOJ

IDProblemSubmitterResultTimeMemoryLanguageFile sizeSubmit timeJudge time
#884486#9734. Identify ChordEstelle_NAC ✓57ms1664kbC++142.0kb2025-02-06 08:49:172025-02-06 08:49:17

Judging History

This is the latest submission verdict.

  • [2025-02-06 08:49:17]
  • Judged
  • Verdict: AC
  • Time: 57ms
  • Memory: 1664kb
  • [2025-02-06 08:49:17]
  • Submitted

answer

#include <cstdio>
#include <algorithm>

using namespace std;

int T, n;

int ask(int x, int y, int z = 0)
{
    printf("? %d %d\n", x, y);
    fflush(stdout);
    scanf("%d", &z);
    return z;
}

void ans(int x, int y, int z = 0)
{
    printf("! %d %d\n", x, y);
    fflush(stdout);
    scanf("%d", &z);
}

int dis(int x, int y)
{
    if(x > y)
        swap(x, y);
    return min(y - x, x + n - y);
}

int move(int u, int k)
{
    u = ((u + k) % n + n) % n;
    return u == 0 ? n : u;
}

void work()
{
    scanf("%d", &n);

    if(n <= 8)
    {
        for(int i = 1; i <= n; ++ i)
            for(int j = i + 2; j <= n; ++ j)
                if(!(i == 1 && j == n) && ask(i, j) == 1)
                    return ans(i, j);
    }

    int u = 1, v = n / 2 + 1, w = n / 2, d = ask(u, v);
    while(d == w)
    {
        if(n & 1)
        {
            if(v - u == n / 2)
                ++ v;
            else
                ++ u;
        }
        else
            ++ u, ++ v;
        d = ask(u, v);
    }

    if(d == 1)
        return ans(u, v);
    int delta = w - d, flag = 0;
    if(ask(u, move(u, delta + 1)) == 1)
        return ans(u, move(u, delta + 1));
    if(ask(u, move(u, - delta - 1)) == 1)
        return ans(u, move(u, - delta - 1));

    int x = u + 1, y = v, z = dis(x, y), k = ask(x, y);
    if(k == 1)
        return ans(x, y);
    if(z - k >= delta)
        flag = 1, w = v - u, delta = w - d;
    else
        flag = -1, w = n - v + u, delta = w - d;

    int l = 0, r = w;
    while(l <= r)
    {
        int mid = l + r >> 1, p = move(u, flag * mid);
        int dist = ((v - p) * flag + n) % n;
        if(dist - ask(p, v) >= delta)
            l = mid + 1, x = p;
        else
            r = mid - 1;
    }

    y = move(x, flag * (delta + 1));
    if(ask(x, y) != 1)
        y = move(v, flag * (ask(x, v) - 1));
    ans(x, y);
}

int main()
{
    scanf("%d", &T);
    while(T --)
        work();

    return 0;
}

这程序好像有点Bug,我给组数据试试?

Details

Tip: Click on the bar to expand more detailed information

Test #1:

score: 100
Accepted
time: 0ms
memory: 1664kb

input:

2
6
2
2
2
1
1
4
1
1

output:

? 1 3
? 1 4
? 1 5
? 2 4
! 2 4
? 1 3
! 1 3

result:

ok ok (2 test cases)

Test #2:

score: 0
Accepted
time: 11ms
memory: 1664kb

input:

1000
15
5
3
3
4
2
2
1
1
1
19
5
5
5
4
5
4
3
4
5
3
1
17
5
4
4
4
4
4
3
4
4
3
1
15
6
1
1
14
5
3
3
4
4
4
5
1
1
15
3
5
4
2
4
2
3
3
2
1
17
8
8
8
7
2
2
6
5
6
5
4
3
4
1
20
6
1
1
13
5
2
2
5
2
2
3
3
2
1
18
3
5
3
4
5
2
3
1
1
13
4
3
3
5
4
3
4
1
1
14
2
3
3
3
3
1
2
1
1
17
8
7
2
2
6
3
2
2
3
3
2
1
12
5
2
2
4
3
4
3
2...

output:

? 1 8
? 1 4
? 1 13
? 2 8
? 4 8
? 6 8
? 5 8
? 5 8
! 5 8
? 1 10
? 1 6
? 1 15
? 2 10
? 5 10
? 2 10
? 3 10
? 4 10
? 3 8
? 3 10
! 3 12
? 1 9
? 1 5
? 1 14
? 2 9
? 5 9
? 2 9
? 3 9
? 4 9
? 3 7
? 3 9
! 3 11
? 1 8
? 1 3
! 1 3
? 1 8
? 1 4
? 1 12
? 2 8
? 4 8
? 2 8
? 3 8
? 2 5
! 2 5
? 1 8
? 1 6
? 1 11
? 2 8
? 4 ...

result:

ok ok (1000 test cases)

Test #3:

score: 0
Accepted
time: 12ms
memory: 1664kb

input:

1000
21
3
3
6
4
6
3
3
2
3
2
1
22
8
4
4
7
6
6
7
4
6
1
20
5
6
6
4
2
3
2
1
1
1
22
10
2
2
9
5
3
4
4
2
4
1
21
9
2
2
8
4
2
3
3
2
3
1
21
8
3
3
9
6
6
5
6
1
1
24
11
2
2
11
5
3
4
4
2
4
1
22
10
2
2
10
5
2
1
2
1
1
21
4
7
4
3
5
4
4
3
5
3
1
23
8
4
4
9
6
8
8
7
1
1
21
10
10
10
9
2
2
8
4
3
3
4
3
3
1
24
9
4
4
8
3
3
2...

output:

? 1 11
? 1 9
? 1 14
? 2 11
? 17 11
? 20 11
? 1 11
? 21 11
? 21 12
? 21 11
! 21 10
? 1 12
? 1 5
? 1 19
? 2 12
? 6 12
? 3 12
? 4 12
? 3 7
? 3 12
! 3 17
? 1 11
? 1 7
? 1 15
? 2 11
? 6 11
? 3 11
? 4 11
? 5 11
? 5 11
! 5 11
? 1 12
? 1 3
? 1 21
? 2 12
? 6 12
? 9 12
? 7 12
? 8 12
? 7 9
? 7 12
! 7 15
? 1 11...

result:

ok ok (1000 test cases)

Test #4:

score: 0
Accepted
time: 14ms
memory: 1664kb

input:

1000
25
8
1
1
25
6
3
7
7
7
6
6
5
8
5
1
25
11
2
2
11
7
9
9
8
3
8
1
25
5
5
8
4
6
3
5
4
1
1
26
12
2
2
12
6
3
5
5
1
1
26
11
3
3
12
7
9
9
10
3
9
1
26
13
13
11
3
1
1
27
12
2
2
11
6
3
5
5
1
1
25
9
4
4
10
3
3
1
2
1
1
27
9
5
5
8
7
7
7
6
1
1
27
11
3
3
12
4
3
5
5
1
1
27
13
13
13
13
12
2
2
11
7
10
8
7
2
7
1
26
...

output:

? 1 13
? 1 6
! 1 6
? 1 13
? 1 8
? 1 19
? 2 13
? 20 13
? 24 13
? 1 13
? 25 13
? 25 17
? 25 13
! 25 9
? 1 13
? 1 3
? 1 24
? 2 13
? 20 13
? 24 13
? 22 13
? 23 13
? 23 20
? 23 13
! 23 6
? 1 13
? 1 9
? 1 18
? 2 13
? 7 13
? 3 13
? 5 13
? 4 13
? 3 11
! 3 11
? 1 14
? 1 3
? 1 25
? 2 14
? 21 14
? 17 14
? 19 1...

result:

ok ok (1000 test cases)

Test #5:

score: 0
Accepted
time: 12ms
memory: 1664kb

input:

1000
29
10
5
5
9
7
9
9
8
5
8
1
28
13
2
2
13
7
10
8
8
2
8
1
30
3
5
3
2
8
4
2
3
3
2
1
29
4
3
8
3
7
5
3
4
1
1
28
8
7
7
9
3
5
3
2
3
2
1
29
6
9
6
5
7
5
5
4
7
4
1
29
9
6
6
10
8
6
8
7
1
1
28
11
4
4
10
4
3
5
5
1
1
30
4
7
7
5
5
1
3
2
1
1
30
8
8
8
9
3
5
3
2
3
2
1
28
11
4
4
10
4
3
2
3
3
2
1
29
14
13
2
2
14
6
3...

output:

? 1 15
? 1 6
? 1 25
? 2 15
? 8 15
? 4 15
? 2 15
? 3 15
? 3 8
? 3 15
! 3 22
? 1 15
? 1 3
? 1 27
? 2 15
? 22 15
? 26 15
? 24 15
? 23 15
? 24 22
? 24 15
! 24 8
? 1 16
? 1 14
? 1 18
? 2 16
? 8 16
? 4 16
? 2 16
? 3 16
? 2 15
? 2 16
! 2 17
? 1 15
? 1 12
? 1 19
? 2 15
? 8 15
? 4 15
? 2 15
? 3 15
? 2 13
! 2...

result:

ok ok (1000 test cases)

Test #6:

score: 0
Accepted
time: 8ms
memory: 1664kb

input:

1000
32
13
4
4
12
8
10
10
9
1
1
30
14
2
2
14
8
11
10
11
1
1
32
16
16
14
3
3
13
8
11
9
8
9
3
8
1
31
5
7
10
4
6
2
4
3
1
1
32
7
10
5
6
8
6
6
5
9
5
1
32
8
9
3
7
8
9
7
8
9
7
1
31
15
14
2
2
13
6
4
4
3
3
3
1
31
6
10
4
7
8
7
5
6
1
1
32
12
5
5
11
4
4
4
3
1
1
30
14
2
2
14
8
11
9
9
1
1
31
11
5
5
12
8
8
10
9
6
...

output:

? 1 17
? 1 5
? 1 29
? 2 17
? 9 17
? 4 17
? 6 17
? 5 17
? 5 9
! 5 9
? 1 16
? 1 3
? 1 29
? 2 16
? 24 16
? 28 16
? 26 16
? 27 16
? 28 26
! 28 26
? 1 17
? 2 18
? 3 19
? 3 6
? 3 32
? 4 19
? 11 19
? 6 19
? 8 19
? 9 19
? 10 19
? 9 12
? 9 19
! 9 26
? 1 16
? 1 12
? 1 21
? 2 16
? 8 16
? 4 16
? 6 16
? 5 16
? 4...

result:

ok ok (1000 test cases)

Test #7:

score: 0
Accepted
time: 7ms
memory: 1664kb

input:

1000
34
17
16
2
2
15
9
13
12
13
2
13
1
33
8
9
9
7
6
5
3
4
1
1
33
11
6
6
12
9
8
10
9
1
1
34
11
7
7
12
9
8
10
9
7
8
1
34
11
7
3
10
9
12
10
11
7
10
1
35
14
1
1
34
8
5
10
9
9
7
7
6
10
6
1
34
14
4
4
13
9
11
11
10
4
10
1
34
16
2
2
15
9
13
12
13
1
1
33
9
8
8
10
7
6
4
5
1
1
33
16
16
16
16
15
2
2
14
7
3
1
1
...

output:

? 1 18
? 2 19
? 2 4
? 2 34
? 3 19
? 10 19
? 5 19
? 7 19
? 6 19
? 5 7
? 5 19
! 5 31
? 1 17
? 1 10
? 1 25
? 2 17
? 9 17
? 4 17
? 6 17
? 7 17
? 6 15
! 6 15
? 1 17
? 1 7
? 1 28
? 2 17
? 26 17
? 31 17
? 29 17
? 30 17
? 31 24
! 31 24
? 1 18
? 1 8
? 1 28
? 2 18
? 27 18
? 32 18
? 30 18
? 31 18
? 32 25
? 32 ...

result:

ok ok (1000 test cases)

Test #8:

score: 0
Accepted
time: 13ms
memory: 1664kb

input:

1000
36
18
17
2
2
16
8
3
1
1
1
1
36
3
5
5
4
8
3
2
1
2
1
1
36
13
6
6
12
9
11
12
11
10
1
1
36
5
5
9
4
9
5
4
3
4
1
1
36
18
17
2
2
16
9
13
12
13
2
13
1
36
12
7
7
11
3
4
5
4
5
3
1
35
13
5
5
14
6
9
7
6
5
1
1
36
13
6
6
12
4
4
4
3
5
3
1
36
14
5
5
13
9
10
10
9
5
9
1
36
16
3
3
15
9
12
10
9
8
1
1
36
9
10
9
8
9...

output:

? 1 19
? 2 20
? 2 4
? 2 36
? 3 20
? 11 20
? 16 20
? 18 20
? 19 20
? 18 20
! 18 20
? 1 19
? 1 17
? 1 21
? 2 19
? 28 19
? 33 19
? 36 19
? 35 19
? 34 19
? 35 19
! 35 19
? 1 19
? 1 7
? 1 31
? 2 19
? 10 19
? 5 19
? 2 19
? 3 19
? 4 19
? 4 10
! 4 10
? 1 19
? 1 15
? 1 23
? 2 19
? 10 19
? 5 19
? 2 19
? 3 19
...

result:

ok ok (1000 test cases)

Test #9:

score: 0
Accepted
time: 18ms
memory: 1664kb

input:

1000
37
17
2
2
17
8
5
6
7
3
6
1
36
17
2
2
17
8
4
7
8
1
1
38
9
11
11
8
6
5
3
4
1
1
37
15
4
4
14
6
4
4
3
4
4
3
1
37
12
7
7
13
3
4
1
2
1
1
36
8
11
7
9
9
6
7
6
5
1
1
37
6
11
6
7
10
6
5
4
5
1
1
37
18
18
18
18
17
2
2
16
9
13
11
10
10
2
10
1
37
17
2
2
17
8
3
2
2
1
1
1
37
8
11
11
7
7
4
4
3
5
3
1
37
10
9
6
1...

output:

? 1 19
? 1 3
? 1 36
? 2 19
? 29 19
? 24 19
? 27 19
? 26 19
? 27 24
? 27 19
! 27 14
? 1 19
? 1 3
? 1 35
? 2 19
? 28 19
? 23 19
? 26 19
? 27 19
? 28 26
! 28 26
? 1 20
? 1 12
? 1 28
? 2 20
? 10 20
? 5 20
? 7 20
? 8 20
? 7 18
! 7 18
? 1 19
? 1 5
? 1 34
? 2 19
? 10 19
? 15 19
? 12 19
? 13 19
? 14 19
? 13...

result:

ok ok (1000 test cases)

Test #10:

score: 0
Accepted
time: 14ms
memory: 1664kb

input:

1000
39
18
2
2
17
9
5
7
6
6
2
6
1
38
8
12
12
9
5
4
2
3
1
1
38
19
19
17
3
3
16
8
5
6
5
6
3
5
1
39
12
3
8
11
10
14
11
12
1
1
38
15
5
5
16
6
3
4
3
2
1
1
39
4
7
2
5
10
8
5
4
1
1
39
18
2
2
18
10
16
17
16
17
3
16
1
38
18
2
2
17
9
4
1
1
1
1
39
14
6
2
15
10
16
15
14
1
1
39
11
9
9
10
6
7
5
4
5
1
1
39
9
11
6
...

output:

? 1 20
? 1 3
? 1 38
? 2 20
? 10 20
? 15 20
? 12 20
? 13 20
? 14 20
? 13 15
? 13 20
! 13 25
? 1 20
? 1 13
? 1 27
? 2 20
? 30 20
? 35 20
? 33 20
? 32 20
? 33 21
! 33 21
? 1 20
? 2 21
? 3 22
? 3 6
? 3 38
? 4 22
? 12 22
? 17 22
? 14 22
? 15 22
? 16 22
? 15 18
? 15 22
! 15 26
? 1 20
? 1 9
? 1 32
? 2 20
?...

result:

ok ok (1000 test cases)

Test #11:

score: 0
Accepted
time: 11ms
memory: 1664kb

input:

1000
40
12
9
9
11
10
8
7
7
6
9
6
1
40
18
3
3
17
8
5
8
7
3
7
1
40
15
6
5
14
10
15
14
13
14
6
13
1
40
8
1
1
40
16
5
5
17
6
5
4
3
4
1
1
40
15
6
6
16
9
11
8
7
8
6
7
1
41
13
1
1
40
7
13
7
8
10
5
6
5
4
1
1
40
18
3
3
19
8
3
2
4
1
1
40
6
7
11
5
10
4
5
4
3
1
1
40
4
3
7
3
10
6
3
4
1
1
41
12
9
8
11
10
10
11
10...

output:

? 1 21
? 1 10
? 1 32
? 2 21
? 11 21
? 5 21
? 8 21
? 6 21
? 7 21
? 7 16
? 7 21
! 7 26
? 1 21
? 1 4
? 1 38
? 2 21
? 11 21
? 16 21
? 13 21
? 12 21
? 12 15
? 12 21
! 12 27
? 1 21
? 1 7
? 1 35
? 2 21
? 11 21
? 5 21
? 2 21
? 3 21
? 4 21
? 3 9
? 3 21
! 3 33
? 1 21
? 1 14
! 1 14
? 1 21
? 1 6
? 1 36
? 2 21
?...

result:

ok ok (1000 test cases)

Test #12:

score: 0
Accepted
time: 7ms
memory: 1664kb

input:

1000
42
11
11
11
10
11
7
8
6
7
1
1
41
17
4
4
18
11
13
14
14
1
1
41
8
5
13
9
11
8
7
6
7
11
6
1
41
12
9
9
13
10
8
7
7
6
10
6
1
41
12
9
9
11
4
8
5
4
3
5
3
1
41
18
3
3
19
11
14
14
13
14
4
13
1
41
14
7
4
15
11
16
13
14
1
1
41
20
20
19
2
2
18
10
15
12
11
10
2
10
1
41
17
4
4
18
11
13
14
14
5
13
1
41
15
6
6...

output:

? 1 22
? 1 12
? 1 32
? 2 22
? 11 22
? 5 22
? 8 22
? 6 22
? 7 22
? 6 17
! 6 17
? 1 21
? 1 5
? 1 38
? 2 21
? 32 21
? 38 21
? 35 21
? 37 21
? 38 33
! 38 33
? 1 21
? 1 14
? 1 29
? 2 21
? 32 21
? 38 21
? 41 21
? 40 21
? 39 21
? 40 26
? 40 21
! 40 16
? 1 21
? 1 10
? 1 33
? 2 21
? 32 21
? 38 21
? 35 21
? 3...

result:

ok ok (1000 test cases)

Test #13:

score: 0
Accepted
time: 20ms
memory: 1664kb

input:

1000
43
4
5
8
3
10
4
3
2
3
1
1
42
18
4
4
17
8
4
5
4
3
1
1
43
6
9
12
5
8
2
5
3
1
1
43
18
4
4
19
11
13
10
9
10
5
9
1
43
21
21
21
20
2
2
19
11
17
18
17
18
3
17
1
43
17
5
5
18
11
12
14
13
6
12
1
43
18
4
4
17
11
17
17
16
17
1
1
43
21
21
21
20
2
1
1
42
13
9
9
14
11
9
8
8
7
1
1
42
20
2
2
20
10
5
8
10
1
1
4...

output:

? 1 22
? 1 19
? 1 26
? 2 22
? 11 22
? 5 22
? 2 22
? 3 22
? 4 22
? 3 21
! 3 21
? 1 22
? 1 5
? 1 39
? 2 22
? 11 22
? 17 22
? 14 22
? 15 22
? 16 22
? 16 20
! 16 20
? 1 22
? 1 17
? 1 28
? 2 22
? 11 22
? 5 22
? 8 22
? 6 22
? 5 21
! 5 21
? 1 22
? 1 5
? 1 40
? 2 22
? 33 22
? 39 22
? 36 22
? 35 22
? 34 22
?...

result:

ok ok (1000 test cases)

Test #14:

score: 0
Accepted
time: 14ms
memory: 1664kb

input:

1000
44
22
22
20
3
3
19
11
17
18
17
18
3
17
1
44
11
12
9
10
11
8
9
8
7
12
7
1
43
11
11
11
12
6
6
3
4
1
1
43
21
21
21
21
20
2
2
19
10
5
7
6
5
2
5
1
44
19
4
3
18
11
17
19
19
18
4
18
1
44
16
7
7
15
11
13
14
13
12
1
1
44
17
6
6
18
6
5
3
4
5
3
1
44
10
13
13
9
7
5
4
4
3
5
3
1
43
13
9
9
14
4
8
5
4
3
5
3
1
...

output:

? 1 23
? 2 24
? 3 25
? 3 6
? 3 44
? 4 25
? 14 25
? 8 25
? 5 25
? 6 25
? 7 25
? 6 9
? 6 25
! 6 41
? 1 23
? 1 13
? 1 33
? 2 23
? 12 23
? 6 23
? 3 23
? 4 23
? 5 23
? 5 17
? 5 23
! 5 29
? 1 22
? 1 12
? 1 33
? 2 22
? 33 22
? 39 22
? 36 22
? 35 22
? 36 24
! 36 24
? 1 22
? 1 23
? 2 23
? 2 24
? 3 24
? 3 5
?...

result:

ok ok (1000 test cases)

Test #15:

score: 0
Accepted
time: 5ms
memory: 1664kb

input:

1000
45
20
3
3
21
12
18
20
20
19
4
19
1
45
16
7
7
17
12
13
14
13
12
8
12
1
45
10
9
13
9
11
7
8
7
6
1
1
45
15
8
8
14
11
10
13
11
8
10
1
45
11
3
12
10
11
14
11
11
10
1
1
45
16
7
7
17
11
11
8
9
8
8
1
45
19
4
4
20
8
6
5
4
5
1
1
45
5
7
10
6
10
4
3
2
3
3
2
1
44
19
4
4
20
11
14
13
13
12
1
1
45
12
11
2
13
1...

output:

? 1 23
? 1 4
? 1 43
? 2 23
? 35 23
? 41 23
? 44 23
? 1 23
? 45 23
? 45 41
? 45 23
! 45 5
? 1 23
? 1 8
? 1 39
? 2 23
? 35 23
? 41 23
? 44 23
? 43 23
? 42 23
? 42 34
? 42 23
! 42 12
? 1 23
? 1 14
? 1 33
? 2 23
? 12 23
? 6 23
? 3 23
? 4 23
? 5 23
? 5 18
! 5 18
? 1 23
? 1 9
? 1 38
? 2 23
? 12 23
? 6 23
...

result:

ok ok (1000 test cases)

Test #16:

score: 0
Accepted
time: 13ms
memory: 1664kb

input:

1000
46
18
6
6
17
9
13
10
9
8
6
8
1
46
9
15
7
8
12
8
7
6
7
11
6
1
46
22
2
2
21
12
17
15
16
16
2
16
1
46
19
5
5
18
12
14
15
15
1
1
46
5
1
1
46
21
3
3
20
10
6
9
9
8
3
8
1
46
18
6
6
17
7
6
9
8
6
7
1
46
16
8
8
15
5
6
8
6
8
5
1
46
22
2
2
22
11
5
2
1
2
1
1
46
5
9
3
4
12
8
5
5
4
7
4
1
45
19
4
4
20
12
14
15...

output:

? 1 24
? 1 7
? 1 41
? 2 24
? 12 24
? 6 24
? 9 24
? 10 24
? 11 24
? 11 17
? 11 24
! 11 31
? 1 24
? 1 16
? 1 32
? 2 24
? 12 24
? 6 24
? 3 24
? 4 24
? 5 24
? 4 19
? 4 24
! 4 29
? 1 24
? 1 3
? 1 45
? 2 24
? 12 24
? 6 24
? 9 24
? 7 24
? 8 24
? 7 9
? 7 24
! 7 39
? 1 24
? 1 6
? 1 42
? 2 24
? 12 24
? 6 24
?...

result:

ok ok (1000 test cases)

Test #17:

score: 0
Accepted
time: 44ms
memory: 1664kb

input:

1000
1000000000
499999999
2
2
499999999
250000000
375000000
312500001
343750001
359375001
367187501
371093751
373046875
372070313
371582033
371826174
371948244
372009279
372039797
372055055
372047426
372043612
372045520
372046474
372046951
372047189
372047308
372047368
372047397
372047382
372047376
...

output:

? 1 500000001
? 1 3
? 1 999999999
? 2 500000001
? 750000001 500000001
? 875000002 500000001
? 812500002 500000001
? 843750002 500000001
? 859375002 500000001
? 867187502 500000001
? 871093752 500000001
? 873046877 500000001
? 872070315 500000001
? 871582034 500000001
? 871826175 500000001
? 87194824...

result:

ok ok (1000 test cases)

Test #18:

score: 0
Accepted
time: 35ms
memory: 1664kb

input:

1000
1000000000
499999969
32
32
499999968
249999969
124999969
62500000
93750000
109374969
101562469
97656219
95703125
96679688
97167938
96923798
96801728
96740724
96771211
96755952
96748354
96752138
96750231
96749277
96748831
96749070
96749158
96749099
96749100
96749110
96749102
96749098
96749098
96...

output:

? 1 500000001
? 1 33
? 1 999999969
? 2 500000001
? 250000001 500000001
? 375000001 500000001
? 437500001 500000001
? 406250001 500000001
? 390625001 500000001
? 398437501 500000001
? 402343751 500000001
? 404296876 500000001
? 403320313 500000001
? 402832032 500000001
? 403076172 500000001
? 4031982...

result:

ok ok (1000 test cases)

Test #19:

score: 0
Accepted
time: 33ms
memory: 1664kb

input:

1000
1000000000
474148191
25851810
25851810
474148190
250000000
349148192
286648192
255398192
239773192
242187500
238281250
237820067
237304687
237331786
237087646
237182616
237121581
237091063
237075804
237080017
237076203
237074296
237074850
237074373
237074134
237074177
237074118
237074104
237074...

output:

? 1 500000001
? 1 25851811
? 1 974148191
? 2 500000001
? 250000001 500000001
? 125000000 500000001
? 187500000 500000001
? 218750000 500000001
? 234375000 500000001
? 242187500 500000001
? 238281250 500000001
? 236328125 500000001
? 237304687 500000001
? 236816406 500000001
? 237060546 500000001
? 2...

result:

ok ok (1000 test cases)

Test #20:

score: 0
Accepted
time: 47ms
memory: 1664kb

input:

1000
1000000000
230485382
230485453
269514619
230485383
249999930
124999929
167985383
136735383
121110383
117187429
117204133
115251008
116210866
115722585
115478444
115356374
115295339
115264821
115249562
115243379
115245747
115243840
115242886
115242903
115242665
115242766
115242706
115242676
1152...

output:

? 1 500000001
? 1 269514620
? 1 730485382
? 2 500000001
? 750000001 500000001
? 875000002 500000001
? 937500002 500000001
? 906250002 500000001
? 890625002 500000001
? 882812502 500000001
? 886718752 500000001
? 884765627 500000001
? 883789065 500000001
? 884277346 500000001
? 884521487 500000001
? ...

result:

ok ok (1000 test cases)

Test #21:

score: 0
Accepted
time: 40ms
memory: 1664kb

input:

1000
1000000000
288090905
211909096
83744101
288090906
250000000
329346804
266846804
256840906
251221804
249028406
247315554
247075281
246338991
246587000
246342860
246220790
246277955
246247437
246232178
246224549
246220734
246218883
246219780
246219303
246219065
246218946
246218886
246218856
24621...

output:

? 1 500000001
? 1 211909097
? 1 788090905
? 2 500000001
? 750000001 500000001
? 875000002 500000001
? 937500002 500000001
? 968750002 500000001
? 953125002 500000001
? 960937502 500000001
? 957031252 500000001
? 958984377 500000001
? 958007815 500000001
? 958496096 500000001
? 958251956 500000001
? ...

result:

ok ok (1000 test cases)

Test #22:

score: 0
Accepted
time: 56ms
memory: 1664kb

input:

1000
999999999
499999998
2
2
499999997
250000000
374999999
312499999
281250000
296874999
289062499
285156249
283203124
282226562
281738281
281494140
281372071
281433105
281402588
281387329
281379701
281383515
281381608
281380655
281381132
281381371
281381489
281381431
281381460
281381446
281381453
2...

output:

? 1 500000000
? 1 3
? 1 999999998
? 2 500000000
? 250000000 500000000
? 125000000 500000000
? 187500000 500000000
? 218750000 500000000
? 203125000 500000000
? 210937500 500000000
? 214843750 500000000
? 216796875 500000000
? 217773437 500000000
? 218261718 500000000
? 218505859 500000000
? 21862792...

result:

ok ok (1000 test cases)

Test #23:

score: 0
Accepted
time: 57ms
memory: 1664kb

input:

1000
999999999
499999957
43
43
499999958
249999957
125000000
187500000
218749957
203124957
195312457
191406207
189453082
188476520
187988282
188232380
188110353
188171388
188201863
188186604
188178975
188175203
188177068
188176157
188176591
188176353
188176234
188176174
188176144
188176149
188176141...

output:

? 1 500000000
? 1 44
? 1 999999957
? 2 500000000
? 750000000 500000000
? 625000000 500000000
? 687500000 500000000
? 718750000 500000000
? 703125000 500000000
? 695312500 500000000
? 691406250 500000000
? 689453125 500000000
? 688476563 500000000
? 687988282 500000000
? 688232423 500000000
? 6881103...

result:

ok ok (1000 test cases)

Test #24:

score: 0
Accepted
time: 42ms
memory: 1664kb

input:

1000
999999999
324545945
175454055
175454055
324545944
250000000
199545946
187500000
168295946
171875000
164062500
164389696
162436571
163085937
162597656
162353515
162314501
162292480
162283984
162277221
162276355
162273406
162274448
162273494
162273017
162273167
162273048
162272988
162272988
16227...

output:

? 1 500000000
? 1 175454056
? 1 824545945
? 2 500000000
? 250000000 500000000
? 125000000 500000000
? 187500000 500000000
? 156250000 500000000
? 171875000 500000000
? 164062500 500000000
? 160156250 500000000
? 162109375 500000000
? 163085937 500000000
? 162597656 500000000
? 162353515 500000000
? ...

result:

ok ok (1000 test cases)

Test #25:

score: 0
Accepted
time: 46ms
memory: 1664kb

input:

1000
999999999
487015083
12984917
12984917
487015084
249999935
362015084
299515084
268265084
252640084
244827584
246093684
244140559
243851022
243652277
243606882
243530206
243545847
243515330
243514947
243507701
243511132
243509224
243508270
243507793
243507555
243507582
243507523
243507525
2435075...

output:

? 1 500000000
? 1 12984918
? 1 987015083
? 2 500000000
? 750000000 500000000
? 875000001 500000000
? 812500001 500000000
? 781250001 500000000
? 765625001 500000000
? 757812501 500000000
? 753906251 500000000
? 755859376 500000000
? 756835939 500000000
? 756347658 500000000
? 756591799 500000000
? 7...

result:

ok ok (1000 test cases)

Test #26:

score: 0
Accepted
time: 31ms
memory: 1664kb

input:

1000
999999999
265285129
234714871
16020246
265285128
250000000
374264884
311764884
280514884
264889884
257472630
260983634
259030509
258053946
257565665
257321524
257350560
257289525
257291006
257275747
257281896
257278082
257276175
257275221
257275270
257275031
257275102
257275043
257275013
257275...

output:

? 1 500000000
? 1 234714872
? 1 765285129
? 2 500000000
? 250000000 500000000
? 125000000 500000000
? 62500000 500000000
? 31250000 500000000
? 15625000 500000000
? 7812500 500000000
? 11718750 500000000
? 9765625 500000000
? 8789062 500000000
? 8300781 500000000
? 8056640 500000000
? 7934570 500000...

result:

ok ok (1000 test cases)

Test #27:

score: 0
Accepted
time: 38ms
memory: 1664kb

input:

1000
536870912
261621269
6814188
6814188
261621270
127403541
67108864
93849109
77071893
75497472
79691776
78290725
77242149
76717861
76809749
76678677
76652325
76645909
76635941
76637717
76633621
76633893
76632869
76633109
76632853
76632741
76632789
76632757
76632741
76632733
76632737
76632735
76632...

output:

? 1 268435457
? 1 6814189
? 1 530056725
? 2 268435457
? 402653185 268435457
? 335544321 268435457
? 369098753 268435457
? 352321537 268435457
? 343932929 268435457
? 348127233 268435457
? 350224385 268435457
? 351272961 268435457
? 351797249 268435457
? 352059393 268435457
? 351928321 268435457
? 35...

result:

ok ok (1000 test cases)

Test #28:

score: 0
Accepted
time: 36ms
memory: 1664kb

input:

1000
536870911
244408485
24026971
24026971
244408486
134217728
182757402
210854054
194076838
185688230
181493926
180660250
180445350
180135962
180183206
180052134
180070426
180037658
180035750
180029466
180031654
180029606
180028582
180028954
180028698
180028570
180028518
180028538
180028522
1800285...

output:

? 1 268435456
? 1 24026972
? 1 512843941
? 2 268435456
? 402653184 268435456
? 469762049 268435456
? 503316481 268435456
? 486539265 268435456
? 478150657 268435456
? 473956353 268435456
? 471859201 268435456
? 472907777 268435456
? 472383489 268435456
? 472645633 268435456
? 472514561 268435456
? 4...

result:

ok ok (1000 test cases)

Extra Test:

score: 0
Extra Test Passed