QOJ.ac

QOJ

ID题目提交者结果用时内存语言文件大小提交时间测评时间
#854437#9734. Identify Chorducup-team191AC ✓79ms3748kbC++231.9kb2025-01-12 01:15:212025-01-12 01:15:25

Judging History

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

  • [2025-01-12 01:15:25]
  • 评测
  • 测评结果:AC
  • 用时:79ms
  • 内存:3748kb
  • [2025-01-12 01:15:21]
  • 提交

answer

#include <bits/stdc++.h>
#define x first
#define y second
using namespace std;
using ll=long long;
using pii=pair<int,int>;
using vi=vector<int>;
using vl=vector<ll>;
#define pb push_back
#define all(a) begin(a),end(a)

const int N=300010,MOD=1e9+7;
const char en='\n';
const ll LLINF=1ll<<60;

int t,n;
map<pii,int> odg;

int ask(int a,int b)
{
	if (odg.find({a,b})!=odg.end()) return odg[{a,b}];
	cout<<"? "<<a+1<<' '<<b+1<<endl;
	int x;
	cin>>x;
	return odg[{a,b}]=odg[{b,a}]=x;
}

int di(int a)
{
	a+=n;
	a%=n;
	if (n%2) return min(ask(a,(a+n/2)%n),ask(a,(a+n/2+1)%n));
	else return ask(a,(a+n/2)%n);
}

void answ(int x,int y)
{
	cout<<"! "<<x+1<<' '<<y+1<<endl;
	int r;
	cin>>r;
	if (r==-1) exit(0);
}

int main()
{
	ios_base::sync_with_stdio(0);
	cin.tie(0);
	cin>>t;
	while (t--)
	{
		cin>>n;
		odg.clear();
		int x=0;
		int d1=di(x);
		int ex=n/2,sav=ex-d1;
		int kol=(2ll*sav+2ll+n)/4;
		int d2=di(kol),d3=di(kol+1),d4=di(n-kol),d5=di(n-kol-1);
		int md=min({d1,d2,d3,d4,d5});
		if (d1==md) x=0;
		else if (d2==md) x=kol;
		else if (d3==md) x=kol+1;
		else if (d4==md) x=(n-kol)%n;
		else if (d5==md) x=(2*n-kol-1)%n;
		else assert(0);
		int le=n/2-md+1;
		bool lef; //includes self
		if (n%2)
		{
			if (ask(x,(x+n/2)%n)<ask(x,(x+n/2+1)%n)) lef=1;
			else lef=0;
		}
		else
		{
			if (ask(x,(x+n/2)%n)<=ask(x,(x+n/2+1)%n)) lef=1;
			else lef=0;
		}
		if (lef)
		{
			int lo=2,hi=n/2;
			while (lo<hi)
			{
				int mid=(lo+hi)/2;
				int ne=(x+mid)%n;
				if (ask(x,ne)==mid-(le-1)) hi=mid;
				else lo=mid+1;
			}
			int a=(x+lo)%n,b=(a-le+n)%n;
			if (ask(a,b)!=1) b=(a+le)%n;
			answ(a,b);
		}
		else
		{
			int lo=2,hi=n/2;
			while (lo<hi)
			{
				int mid=(lo+hi)/2;
				int ne=(x+n-mid)%n;
				if (ask(x,ne)==mid-(le-1)) hi=mid;
				else lo=mid+1;
			}
			int a=(x+n-lo)%n,b=(a+le)%n;
			answ(a,b);
		}
	}
}

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

详细

Test #1:

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

input:

2
6
2
3
2
2
2
1
1
4
1
2
1
1

output:

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

result:

ok ok (2 test cases)

Test #2:

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

input:

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

output:

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

result:

ok ok (1000 test cases)

Test #3:

score: 0
Accepted
time: 16ms
memory: 3692kb

input:

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

output:

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

result:

ok ok (1000 test cases)

Test #4:

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

input:

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

output:

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

result:

ok ok (1000 test cases)

Test #5:

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

input:

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

output:

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

result:

ok ok (1000 test cases)

Test #6:

score: 0
Accepted
time: 29ms
memory: 3632kb

input:

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

output:

? 1 17
? 11 27
? 12 28
? 23 7
? 22 6
? 1 18
? 1 10
? 1 6
? 1 8
? 1 9
? 9 5
! 9 5
? 1 16
? 9 24
? 10 25
? 23 8
? 22 7
? 1 17
? 1 23
? 1 26
? 1 28
? 1 27
! 26 28
? 1 17
? 9 25
? 10 26
? 24 8
? 9 26
? 9 32
? 9 28
? 9 27
! 26 9
? 1 17
? 1 16
? 14 30
? 14 29
? 15 31
? 15 30
? 19 4
? 19 3
? 18 3
? 18 2
? ...

result:

ok ok (1000 test cases)

Test #7:

score: 0
Accepted
time: 21ms
memory: 3692kb

input:

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

output:

? 1 18
? 10 27
? 11 28
? 26 9
? 25 8
? 10 28
? 10 1
? 10 31
? 10 33
? 10 32
! 31 5
? 1 18
? 1 17
? 13 30
? 13 29
? 14 31
? 14 30
? 22 6
? 22 5
? 21 5
? 21 4
? 1 10
? 1 14
? 1 16
? 1 15
? 15 6
! 15 6
? 1 18
? 1 17
? 12 29
? 12 28
? 13 30
? 13 29
? 23 7
? 23 6
? 22 6
? 22 5
? 1 25
? 1 21
? 1 23
? 1 24...

result:

ok ok (1000 test cases)

Test #8:

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

input:

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

output:

? 1 19
? 10 28
? 11 29
? 27 9
? 10 29
? 10 20
? 10 16
? 10 18
? 10 19
? 20 18
! 20 18
? 1 19
? 18 36
? 20 2
? 1 20
? 1 11
? 1 15
? 1 17
? 1 18
? 19 3
! 19 35
? 1 19
? 13 31
? 14 32
? 25 7
? 24 6
? 1 20
? 1 11
? 1 7
? 1 9
? 1 10
? 10 4
! 10 4
? 1 19
? 17 35
? 18 36
? 21 3
? 20 2
? 1 20
? 1 11
? 1 15
...

result:

ok ok (1000 test cases)

Test #9:

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

input:

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

output:

? 1 20
? 1 19
? 11 30
? 11 29
? 12 31
? 12 30
? 28 10
? 28 9
? 27 9
? 27 8
? 11 21
? 11 25
? 11 27
? 11 26
? 27 14
! 27 14
? 1 19
? 11 29
? 12 30
? 27 9
? 26 8
? 1 20
? 1 27
? 1 23
? 1 25
? 1 26
! 26 28
? 1 20
? 16 35
? 17 36
? 24 5
? 23 4
? 1 21
? 1 11
? 1 16
? 1 18
? 1 17
? 18 7
! 18 7
? 1 20
? 1 ...

result:

ok ok (1000 test cases)

Test #10:

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

input:

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

output:

? 1 21
? 1 20
? 12 32
? 12 31
? 13 33
? 13 32
? 29 10
? 29 9
? 28 9
? 28 8
? 12 22
? 12 27
? 12 25
? 12 24
? 25 13
! 25 13
? 1 20
? 16 35
? 17 36
? 24 5
? 23 4
? 1 21
? 1 29
? 1 24
? 1 22
! 21 33
? 1 20
? 11 30
? 12 31
? 29 10
? 28 9
? 11 31
? 11 21
? 11 26
? 11 24
? 11 25
? 26 15
! 26 15
? 1 21
? 1...

result:

ok ok (1000 test cases)

Test #11:

score: 0
Accepted
time: 37ms
memory: 3688kb

input:

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

output:

? 1 21
? 15 35
? 16 36
? 27 7
? 26 6
? 27 8
? 27 38
? 27 3
? 27 5
? 27 6
? 7 28
! 7 26
? 1 21
? 12 32
? 13 33
? 30 10
? 29 9
? 12 33
? 12 23
? 12 28
? 12 26
? 12 27
! 27 12
? 1 21
? 14 34
? 15 35
? 28 8
? 27 7
? 28 9
? 28 39
? 28 4
? 28 2
? 28 3
? 3 33
! 3 33
? 1 21
? 17 37
? 18 38
? 25 5
? 24 4
? 1...

result:

ok ok (1000 test cases)

Test #12:

score: 0
Accepted
time: 24ms
memory: 3636kb

input:

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

output:

? 1 22
? 17 38
? 18 39
? 27 6
? 26 5
? 1 23
? 1 12
? 1 17
? 1 15
? 1 16
? 17 6
! 17 6
? 1 22
? 1 21
? 13 34
? 13 33
? 14 35
? 14 34
? 30 10
? 30 9
? 29 9
? 29 8
? 1 31
? 1 36
? 1 33
? 1 34
! 33 38
? 1 22
? 1 21
? 17 38
? 17 37
? 18 39
? 18 38
? 26 6
? 26 5
? 25 5
? 25 4
? 17 6
? 17 1
? 17 40
? 17 41...

result:

ok ok (1000 test cases)

Test #13:

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

input:

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

output:

? 1 23
? 1 22
? 20 42
? 20 41
? 21 43
? 21 42
? 25 4
? 25 3
? 24 3
? 24 2
? 1 12
? 1 17
? 1 20
? 1 21
? 21 3
! 21 3
? 1 22
? 13 34
? 14 35
? 31 10
? 30 9
? 1 23
? 1 12
? 1 17
? 1 20
? 1 19
? 20 16
! 20 16
? 1 23
? 1 22
? 19 41
? 19 40
? 20 42
? 20 41
? 26 5
? 26 4
? 25 4
? 25 3
? 1 12
? 1 17
? 1 20
...

result:

ok ok (1000 test cases)

Test #14:

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

input:

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

output:

? 1 23
? 12 34
? 13 35
? 33 11
? 12 35
? 12 44
? 12 39
? 12 41
? 12 42
! 41 6
? 1 23
? 18 40
? 19 41
? 28 6
? 27 5
? 28 7
? 28 40
? 28 1
? 28 4
? 28 5
? 5 29
! 5 29
? 1 23
? 1 22
? 17 39
? 17 38
? 18 40
? 18 39
? 28 7
? 28 6
? 27 6
? 27 5
? 1 33
? 1 28
? 1 25
? 1 24
! 24 36
? 1 23
? 1 22
? 12 34
? 1...

result:

ok ok (1000 test cases)

Test #15:

score: 0
Accepted
time: 26ms
memory: 3692kb

input:

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

output:

? 1 24
? 1 23
? 13 36
? 13 35
? 14 37
? 14 36
? 34 12
? 34 11
? 33 11
? 33 10
? 13 1
? 13 41
? 13 43
? 13 44
? 13 45
! 45 5
? 1 24
? 1 23
? 15 38
? 15 37
? 16 39
? 16 38
? 32 10
? 32 9
? 31 9
? 31 8
? 15 3
? 15 43
? 15 40
? 15 41
? 15 42
! 42 12
? 1 24
? 1 23
? 18 41
? 18 40
? 19 42
? 19 41
? 29 7
?...

result:

ok ok (1000 test cases)

Test #16:

score: 0
Accepted
time: 19ms
memory: 3728kb

input:

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

output:

? 1 24
? 15 38
? 16 39
? 33 10
? 32 9
? 33 11
? 33 21
? 33 15
? 33 12
! 11 31
? 1 24
? 20 43
? 21 44
? 28 5
? 27 4
? 28 6
? 28 40
? 28 46
? 28 3
? 28 4
? 4 29
! 4 29
? 1 24
? 13 36
? 14 37
? 35 12
? 34 11
? 13 37
? 13 1
? 13 41
? 13 38
? 13 39
? 13 40
! 39 7
? 1 24
? 15 38
? 16 39
? 33 10
? 32 9
? 1...

result:

ok ok (1000 test cases)

Test #17:

score: 0
Accepted
time: 29ms
memory: 3692kb

input:

1000
1000000000
499999999
499999999
499999999
499999999
499999999
499999998
250000000
125000001
187500000
156250000
140625000
132812500
128906250
126953126
127929689
128417969
128173829
128051759
127990724
127960206
127944948
127952578
127956392
127954485
127953531
127953054
127952816
127952697
1279...

output:

? 1 500000001
? 250000002 750000002
? 250000003 750000003
? 750000000 250000000
? 749999999 249999999
? 1 500000002
? 1 750000000
? 1 875000000
? 1 812500000
? 1 843750000
? 1 859375000
? 1 867187500
? 1 871093750
? 1 873046875
? 1 872070312
? 1 871582031
? 1 871826171
? 1 871948241
? 1 872009276
? ...

result:

ok ok (1000 test cases)

Test #18:

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

input:

1000
1000000000
499999969
499999969
499999969
499999969
499999969
499999970
250000001
375000001
437499970
406249970
390625001
398437501
402343751
404296845
403320283
402832033
403076174
403198244
403259248
403228762
403244021
403251619
403247836
403249743
403250697
403251143
403250905
403250817
4032...

output:

? 1 500000001
? 250000017 750000017
? 250000018 750000018
? 749999985 249999985
? 749999984 249999984
? 1 500000002
? 1 250000002
? 1 375000002
? 1 437500002
? 1 406250002
? 1 390625002
? 1 398437502
? 1 402343752
? 1 404296877
? 1 403320315
? 1 402832034
? 1 403076175
? 1 403198245
? 1 403259280
? ...

result:

ok ok (1000 test cases)

Test #19:

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

input:

1000
1000000000
474148191
51703621
51703623
1
3
2
250000000
125000000
62500000
31250000
15625000
7812500
3906250
1953125
976563
488282
244141
122071
61036
30518
15259
7630
3815
1908
954
477
239
120
60
30
15
8
4
2
1
1000000000
479245617
1
3
41508769
41508771
2
250000000
125000000
62500000
31250000
15...

output:

? 1 500000001
? 262925906 762925906
? 262925907 762925907
? 737074096 237074096
? 737074095 237074095
? 737074096 237074097
? 737074096 987074097
? 737074096 112074097
? 737074096 174574097
? 737074096 205824097
? 737074096 221449097
? 737074096 229261597
? 737074096 233167847
? 737074096 235120972
...

result:

ok ok (1000 test cases)

Test #20:

score: 0
Accepted
time: 75ms
memory: 3692kb

input:

1000
1000000000
230485382
72
72
460970764
460970762
73
250000001
125000001
62500001
31250001
15625001
7812501
3906251
1953126
976564
488283
244142
122072
61037
30519
15260
7631
3816
1909
955
478
240
121
61
43
46
38
40
38
37
1
1
1000000000
237329401
474658801
474658799
87
87
88
250000000
125000000
62...

output:

? 1 500000001
? 384757310 884757310
? 384757311 884757311
? 615242692 115242692
? 615242691 115242691
? 384757310 884757311
? 384757310 634757311
? 384757310 759757311
? 384757310 822257311
? 384757310 853507311
? 384757310 869132311
? 384757310 876944811
? 384757310 880851061
? 384757310 882804186
...

result:

ok ok (1000 test cases)

Test #21:

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

input:

1000
1000000000
288090905
492437709
492437707
288090905
288090905
288090904
45653196
163090906
100590906
69340906
53715906
45903406
41997156
43700071
42723508
42235227
41991086
41875086
41930051
41899533
41884274
41876645
41872830
41873179
41872226
41872353
41872114
41872107
41872054
41872078
418720...

output:

? 1 500000001
? 355954549 855954549
? 355954550 855954550
? 644045453 144045453
? 644045452 144045452
? 1 500000002
? 1 750000000
? 1 625000000
? 1 687500000
? 1 718750000
? 1 734375000
? 1 742187500
? 1 746093750
? 1 748046875
? 1 747070312
? 1 746582031
? 1 746337890
? 1 746215820
? 1 746276855
? ...

result:

ok ok (1000 test cases)

Test #22:

score: 0
Accepted
time: 79ms
memory: 3668kb

input:

1000
999999999
499999999
499999998
499999998
499999999
499999998
499999999
499999998
499999999
499999998
249999999
125000001
187500001
218750000
203125001
210937501
214843751
216796876
217773439
218261720
218505861
218627930
218566896
218597414
218612673
218620301
218616488
218618395
218619348
21861...

output:

? 1 500000001
? 1 500000000
? 250000001 750000001
? 250000001 750000000
? 250000002 750000002
? 250000002 750000001
? 750000000 250000000
? 749999999 250000000
? 749999999 249999999
? 1 250000001
? 1 125000002
? 1 187500002
? 1 218750002
? 1 203125002
? 1 210937502
? 1 214843752
? 1 216796877
? 1 21...

result:

ok ok (1000 test cases)

Test #23:

score: 0
Accepted
time: 60ms
memory: 3624kb

input:

1000
999999999
499999956
499999957
499999957
499999956
499999957
499999956
499999956
499999957
499999956
499999957
250000000
374999957
312499957
281250000
296875000
304687500
308593750
310546875
311523438
312011676
311767579
311889606
311828571
311798097
311813356
311820985
311824757
311822893
31182...

output:

? 1 500000001
? 1 500000000
? 250000022 750000022
? 250000022 750000021
? 250000023 750000023
? 250000023 750000022
? 749999979 249999980
? 749999979 249999979
? 749999978 249999979
? 749999978 249999978
? 1 750000000
? 1 625000000
? 1 687500000
? 1 718750000
? 1 703125000
? 1 695312500
? 1 69140625...

result:

ok ok (1000 test cases)

Test #24:

score: 0
Accepted
time: 70ms
memory: 3656kb

input:

1000
999999999
324545944
324545945
350908112
350908111
350908114
350908113
3
2
1
2
250000000
125000000
62500000
31250000
15625000
7812500
3906250
1953125
976563
488282
244141
122071
61036
30518
15259
7630
3815
1908
954
477
239
120
60
30
15
8
4
2
1
999999999
446446635
446446636
107106731
107106730
10...

output:

? 1 500000001
? 1 500000000
? 337727028 837727028
? 337727028 837727027
? 337727029 837727029
? 337727029 837727028
? 662272973 162272974
? 662272973 162272973
? 662272972 162272973
? 662272972 162272972
? 662272972 412272972
? 662272972 287272972
? 662272972 224772972
? 662272972 193522972
? 662272...

result:

ok ok (1000 test cases)

Test #25:

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

input:

1000
999999999
487015084
487015083
67
66
67
66
25969834
25969835
25969836
25969837
250000000
125000001
62500001
31250001
15625001
7812501
3906251
1953126
976564
488283
244142
122072
61037
30519
15260
7631
3816
1909
955
478
240
121
61
37
46
38
34
36
35
1
1
999999999
307120210
307120211
385759580
3857...

output:

? 1 500000001
? 1 500000000
? 256492459 756492459
? 256492459 756492458
? 256492460 756492460
? 256492460 756492459
? 743507542 243507543
? 743507542 243507542
? 743507541 243507542
? 743507541 243507541
? 256492459 506492459
? 256492459 631492459
? 256492459 693992459
? 256492459 725242459
? 256492...

result:

ok ok (1000 test cases)

Test #26:

score: 0
Accepted
time: 37ms
memory: 3748kb

input:

1000
999999999
265285128
265285129
469429744
469429743
469429746
469429745
249264885
249264884
249264885
249264884
249999999
124999999
186764885
155514885
139889885
132077385
128171135
126218010
125241448
124753167
124755858
124633787
124692132
124661615
124646356
124638727
124634912
124633005
12463...

output:

? 1 500000001
? 1 500000000
? 367357436 867357436
? 367357436 867357435
? 367357437 867357437
? 367357437 867357436
? 632642565 132642566
? 632642565 132642565
? 632642564 132642565
? 632642564 132642564
? 632642565 882642565
? 632642565 7642566
? 632642565 70142566
? 632642565 38892566
? 632642565 ...

result:

ok ok (1000 test cases)

Test #27:

score: 0
Accepted
time: 76ms
memory: 3696kb

input:

1000
536870912
261621269
108355805
108355805
108355805
108355805
108355806
134217728
67108864
74801374
58024158
58720256
54525952
55927006
54878430
54354142
54263808
54223070
54198272
54190302
54181888
54182110
54178014
54179840
54178816
54178304
54178048
54177920
54177950
54177918
54177904
54177910...

output:

? 1 268435457
? 137624823 406060279
? 137624824 406060280
? 399246091 130810635
? 399246090 130810634
? 137624823 406060280
? 137624823 271842552
? 137624823 338951416
? 137624823 372505848
? 137624823 355728632
? 137624823 347340024
? 137624823 351534328
? 137624823 353631480
? 137624823 352582904
...

result:

ok ok (1000 test cases)

Test #28:

score: 0
Accepted
time: 72ms
memory: 3672kb

input:

1000
536870911
244408484
244408485
244408484
244408485
244408484
244408485
244408485
244408484
244408485
244408484
110190757
67108865
76636326
68900838
68247718
64706534
66150566
65101990
64577702
64444390
64446630
64381094
64411622
64395238
64387046
64382950
64380902
64380070
64380390
64380134
6438...

output:

? 1 268435457
? 1 268435456
? 146231214 414666670
? 146231214 414666669
? 146231215 414666671
? 146231215 414666670
? 390639699 122204244
? 390639699 122204243
? 390639698 122204243
? 390639698 122204242
? 1 402653184
? 1 469762047
? 1 436207615
? 1 452984831
? 1 444596223
? 1 448790527
? 1 44669337...

result:

ok ok (1000 test cases)

Extra Test:

score: 0
Extra Test Passed