Submission #528066

#TimeUsernameProblemLanguageResultExecution timeMemory
528066SiddhantAttavarColors (BOI20_colors)C++14
0 / 100
1 ms200 KiB
#include <bits/stdc++.h>
using namespace std;
template<typename T> inline void input(T& inVar) {cin >> inVar;}
template<typename T, typename... S> inline void input(T& inVar, S&... args) {cin >> inVar; input(args ...);}
template<typename T> inline void print(T outVar) {cout << outVar << endl;}
template<typename T, typename... S> inline void print(T outVar, S... args) {cout << outVar << ' '; print(args ...);}
#define range(it, start, end) for (int it = start; it < end; it++)
#define arrPut(var) for (auto &inVar : var) {cin >> inVar;}
#define arrPrint(var) for (auto outVar : var) {cout << outVar << ' ';} cout << endl
#define setup() ios::sync_with_stdio(false); cin.tie(NULL); cout.tie(NULL)
#define int long long

int32_t main() {
	setup();
	
	int n;
	input(n);

	int l = 1, r = n, res = n;
	int c = 0;
	print("? ", c);
	bool f;
	input(f);
	while (l <= r) {
		int m = (l + r) / 2;
		if (c - m <= 0) {
			print("? ", c + m);
		}
		else {
			print("? ", c - m);
		}

		bool b;
		input(b);
		if (b) {
			res = m;
			r = m - 1;
		}
		else {
			l = m + 1;
		}
	}
	print("= ", res);
}

#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...