#include <bits/stdc++.h>
using namespace std;
#define int long long
int32_t main() {
int n; cin >> n;
int sign = 1;
int l = 1, r = n - 1, x = 0, mn = 0;
while (l <= r) {
int m = (l + r) / 2;
x += m * sign;
sign *= -1;
mn = min(mn, x);
if (x >= n) r = m;
else l = m + 1;
}
x = -mn + 1;
l = 1, r = n - 1; int ans = n;
cout << "? " << x << endl;
int res; cin >> res;
sign = 1;
while (l <= r) {
int m = (l + r) / 2;
if (m == n) break;
x += m * sign;
sign *= -1;
cout << "? " << x << endl;
cin >> res;
if (res) ans = m, r = m - 1;
else l = m + 1;
}
cout << "= " << ans << endl;
}
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |