답안 #1038526

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
1038526 2024-07-29T22:10:14 Z Edu175 Colors (BOI20_colors) C++17
9 / 100
1 ms 600 KB
#include <bits/stdc++.h>
#define pb push_back
#define fst first
#define snd second
#define fore(i,a,b) for(ll i=a,isudgh=b;i<isudgh;i++)
#define SZ(x) ((int)(x).size())
#define ALL(x) x.begin(),x.end()
#define mset(a,v) memset((a),(v),sizeof(a))
#define imp(v) {for(auto jhglkdfjg:v)cout<<jhglkdfjg<<" ";cout<<"\n";}
#define FIN ios::sync_with_stdio(0);cin.tie(0);cout.tie(0)
using namespace std;
typedef long long ll;
typedef pair<ll,ll> ii;
random_device rd;
mt19937 rng(rd());

set<ll>st;
ll ask(ll c){
	// cout<<"ask "<<c+1<<endl;
	
	assert(!st.count(c));
	st.insert(c);
	cout<<"? "<<c+1<<endl;
	ll ret; cin>>ret;
	return ret;
}
ll ask(ll a, ll b){
	ask(a); return ask(b);
}
void bf(ll n){
	ask(0);
	ll col=0,res=1;
	for(ll i=n-1;i>0;i--){
		ll c=col+(i%2==n%2?-i:i);
		if(!ask(c)){
			res=i+1;
			break;
		}
		col=c;
	}
	cout<<"= "<<res<<endl;
	exit(0);
}
int main(){FIN;
	ll n; cin>>n;
	if(n<=64)bf(n);
	ll l=1,r=n-1;
	while(l<=r){
		ll m=(l+r)/2;
		ll p=n/2-m/2;
		if(st.count(p)||st.count(p+m)){
			fore(i,0,n-m)if(!st.count(i)&&!st.count(i+m)){
				p=i;break;}
		}
		// cout<<l<<","<<r<<": m "<<m<<": "<<p<<","<<p+m<<"\n";
		if(ask(p,p+m))r=m-1;
		else l=m+1;
	}
	cout<<"= "<<l<<endl;
	return 0;
}
# 결과 실행 시간 메모리 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 0 ms 344 KB OK (13 queries)
6 Correct 1 ms 344 KB OK (26 queries)
7 Correct 1 ms 344 KB OK (17 queries)
8 Correct 0 ms 344 KB OK (7 queries)
9 Correct 0 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 340 KB OK (5 queries)
13 Correct 0 ms 344 KB OK (11 queries)
14 Correct 0 ms 344 KB OK (16 queries)
15 Correct 0 ms 344 KB OK (11 queries)
16 Correct 0 ms 344 KB OK (34 queries)
17 Correct 0 ms 344 KB OK (2 queries)
18 Correct 0 ms 344 KB OK (16 queries)
19 Correct 0 ms 344 KB OK (3 queries)
20 Correct 0 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 1 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 0 ms 344 KB OK (2 queries)
43 Correct 0 ms 344 KB OK (3 queries)
44 Correct 0 ms 344 KB OK (4 queries)
45 Correct 0 ms 344 KB OK (5 queries)
46 Correct 0 ms 344 KB OK (6 queries)
47 Correct 1 ms 344 KB OK (7 queries)
48 Correct 0 ms 344 KB OK (7 queries)
49 Correct 0 ms 344 KB OK (2 queries)
50 Correct 0 ms 344 KB OK (3 queries)
51 Correct 0 ms 344 KB OK (4 queries)
52 Correct 0 ms 344 KB OK (5 queries)
53 Correct 1 ms 344 KB OK (6 queries)
54 Correct 0 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 0 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 1 ms 344 KB OK (63 queries)
62 Correct 1 ms 344 KB OK (2 queries)
63 Correct 1 ms 344 KB OK (63 queries)
64 Correct 0 ms 344 KB OK (3 queries)
65 Correct 1 ms 344 KB OK (62 queries)
66 Correct 0 ms 344 KB OK (4 queries)
67 Correct 0 ms 344 KB OK (61 queries)
68 Correct 0 ms 344 KB OK (5 queries)
69 Correct 1 ms 344 KB OK (60 queries)
70 Correct 0 ms 344 KB OK (6 queries)
# 결과 실행 시간 메모리 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 0 ms 344 KB OK (13 queries)
6 Correct 1 ms 344 KB OK (26 queries)
7 Correct 1 ms 344 KB OK (17 queries)
8 Correct 0 ms 344 KB OK (7 queries)
9 Correct 0 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 340 KB OK (5 queries)
13 Correct 0 ms 344 KB OK (11 queries)
14 Correct 0 ms 344 KB OK (16 queries)
15 Correct 0 ms 344 KB OK (11 queries)
16 Correct 0 ms 344 KB OK (34 queries)
17 Correct 0 ms 344 KB OK (2 queries)
18 Correct 0 ms 344 KB OK (16 queries)
19 Correct 0 ms 344 KB OK (3 queries)
20 Correct 0 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 1 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 0 ms 344 KB OK (2 queries)
43 Correct 0 ms 344 KB OK (3 queries)
44 Correct 0 ms 344 KB OK (4 queries)
45 Correct 0 ms 344 KB OK (5 queries)
46 Correct 0 ms 344 KB OK (6 queries)
47 Correct 1 ms 344 KB OK (7 queries)
48 Correct 0 ms 344 KB OK (7 queries)
49 Correct 0 ms 344 KB OK (2 queries)
50 Correct 0 ms 344 KB OK (3 queries)
51 Correct 0 ms 344 KB OK (4 queries)
52 Correct 0 ms 344 KB OK (5 queries)
53 Correct 1 ms 344 KB OK (6 queries)
54 Correct 0 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 0 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 1 ms 344 KB OK (63 queries)
62 Correct 1 ms 344 KB OK (2 queries)
63 Correct 1 ms 344 KB OK (63 queries)
64 Correct 0 ms 344 KB OK (3 queries)
65 Correct 1 ms 344 KB OK (62 queries)
66 Correct 0 ms 344 KB OK (4 queries)
67 Correct 0 ms 344 KB OK (61 queries)
68 Correct 0 ms 344 KB OK (5 queries)
69 Correct 1 ms 344 KB OK (60 queries)
70 Correct 0 ms 344 KB OK (6 queries)
71 Correct 0 ms 344 KB OK (12 queries)
72 Runtime error 1 ms 600 KB Execution killed with signal 6
73 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 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 0 ms 344 KB OK (13 queries)
6 Correct 1 ms 344 KB OK (26 queries)
7 Correct 1 ms 344 KB OK (17 queries)
8 Correct 0 ms 344 KB OK (7 queries)
9 Correct 0 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 340 KB OK (5 queries)
13 Correct 0 ms 344 KB OK (11 queries)
14 Correct 0 ms 344 KB OK (16 queries)
15 Correct 0 ms 344 KB OK (11 queries)
16 Correct 0 ms 344 KB OK (34 queries)
17 Correct 0 ms 344 KB OK (2 queries)
18 Correct 0 ms 344 KB OK (16 queries)
19 Correct 0 ms 344 KB OK (3 queries)
20 Correct 0 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 1 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 0 ms 344 KB OK (2 queries)
43 Correct 0 ms 344 KB OK (3 queries)
44 Correct 0 ms 344 KB OK (4 queries)
45 Correct 0 ms 344 KB OK (5 queries)
46 Correct 0 ms 344 KB OK (6 queries)
47 Correct 1 ms 344 KB OK (7 queries)
48 Correct 0 ms 344 KB OK (7 queries)
49 Correct 0 ms 344 KB OK (2 queries)
50 Correct 0 ms 344 KB OK (3 queries)
51 Correct 0 ms 344 KB OK (4 queries)
52 Correct 0 ms 344 KB OK (5 queries)
53 Correct 1 ms 344 KB OK (6 queries)
54 Correct 0 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 0 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 1 ms 344 KB OK (63 queries)
62 Correct 1 ms 344 KB OK (2 queries)
63 Correct 1 ms 344 KB OK (63 queries)
64 Correct 0 ms 344 KB OK (3 queries)
65 Correct 1 ms 344 KB OK (62 queries)
66 Correct 0 ms 344 KB OK (4 queries)
67 Correct 0 ms 344 KB OK (61 queries)
68 Correct 0 ms 344 KB OK (5 queries)
69 Correct 1 ms 344 KB OK (60 queries)
70 Correct 0 ms 344 KB OK (6 queries)
71 Correct 0 ms 344 KB OK (12 queries)
72 Runtime error 1 ms 600 KB Execution killed with signal 6
73 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 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 0 ms 344 KB OK (13 queries)
6 Correct 1 ms 344 KB OK (26 queries)
7 Correct 1 ms 344 KB OK (17 queries)
8 Correct 0 ms 344 KB OK (7 queries)
9 Correct 0 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 340 KB OK (5 queries)
13 Correct 0 ms 344 KB OK (11 queries)
14 Correct 0 ms 344 KB OK (16 queries)
15 Correct 0 ms 344 KB OK (11 queries)
16 Correct 0 ms 344 KB OK (34 queries)
17 Correct 0 ms 344 KB OK (2 queries)
18 Correct 0 ms 344 KB OK (16 queries)
19 Correct 0 ms 344 KB OK (3 queries)
20 Correct 0 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 1 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 0 ms 344 KB OK (2 queries)
43 Correct 0 ms 344 KB OK (3 queries)
44 Correct 0 ms 344 KB OK (4 queries)
45 Correct 0 ms 344 KB OK (5 queries)
46 Correct 0 ms 344 KB OK (6 queries)
47 Correct 1 ms 344 KB OK (7 queries)
48 Correct 0 ms 344 KB OK (7 queries)
49 Correct 0 ms 344 KB OK (2 queries)
50 Correct 0 ms 344 KB OK (3 queries)
51 Correct 0 ms 344 KB OK (4 queries)
52 Correct 0 ms 344 KB OK (5 queries)
53 Correct 1 ms 344 KB OK (6 queries)
54 Correct 0 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 0 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 1 ms 344 KB OK (63 queries)
62 Correct 1 ms 344 KB OK (2 queries)
63 Correct 1 ms 344 KB OK (63 queries)
64 Correct 0 ms 344 KB OK (3 queries)
65 Correct 1 ms 344 KB OK (62 queries)
66 Correct 0 ms 344 KB OK (4 queries)
67 Correct 0 ms 344 KB OK (61 queries)
68 Correct 0 ms 344 KB OK (5 queries)
69 Correct 1 ms 344 KB OK (60 queries)
70 Correct 0 ms 344 KB OK (6 queries)
71 Correct 0 ms 344 KB OK (12 queries)
72 Runtime error 1 ms 600 KB Execution killed with signal 6
73 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 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 0 ms 344 KB OK (13 queries)
6 Correct 1 ms 344 KB OK (26 queries)
7 Correct 1 ms 344 KB OK (17 queries)
8 Correct 0 ms 344 KB OK (7 queries)
9 Correct 0 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 340 KB OK (5 queries)
13 Correct 0 ms 344 KB OK (11 queries)
14 Correct 0 ms 344 KB OK (16 queries)
15 Correct 0 ms 344 KB OK (11 queries)
16 Correct 0 ms 344 KB OK (34 queries)
17 Correct 0 ms 344 KB OK (2 queries)
18 Correct 0 ms 344 KB OK (16 queries)
19 Correct 0 ms 344 KB OK (3 queries)
20 Correct 0 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 1 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 0 ms 344 KB OK (2 queries)
43 Correct 0 ms 344 KB OK (3 queries)
44 Correct 0 ms 344 KB OK (4 queries)
45 Correct 0 ms 344 KB OK (5 queries)
46 Correct 0 ms 344 KB OK (6 queries)
47 Correct 1 ms 344 KB OK (7 queries)
48 Correct 0 ms 344 KB OK (7 queries)
49 Correct 0 ms 344 KB OK (2 queries)
50 Correct 0 ms 344 KB OK (3 queries)
51 Correct 0 ms 344 KB OK (4 queries)
52 Correct 0 ms 344 KB OK (5 queries)
53 Correct 1 ms 344 KB OK (6 queries)
54 Correct 0 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 0 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 1 ms 344 KB OK (63 queries)
62 Correct 1 ms 344 KB OK (2 queries)
63 Correct 1 ms 344 KB OK (63 queries)
64 Correct 0 ms 344 KB OK (3 queries)
65 Correct 1 ms 344 KB OK (62 queries)
66 Correct 0 ms 344 KB OK (4 queries)
67 Correct 0 ms 344 KB OK (61 queries)
68 Correct 0 ms 344 KB OK (5 queries)
69 Correct 1 ms 344 KB OK (60 queries)
70 Correct 0 ms 344 KB OK (6 queries)
71 Correct 0 ms 344 KB OK (12 queries)
72 Runtime error 1 ms 600 KB Execution killed with signal 6
73 Halted 0 ms 0 KB -