#include <bits/stdc++.h>
using namespace std;
using i64 = long long;
template<typename T>
using vec = vector<T>;
int last1 = 0,last2 = 0,c = INT_MAX;
int query(int sorgu){
if (last1 == 0) last1 = sorgu;
else {
last2 = last1;
last1 = sorgu;
}
cout << "? " << sorgu << endl;
cout.flush();
int q; cin >> q;
if (q && last2 != 0) c = min(c,abs(last1 - last2));
return q;
}
int main(){
ios_base::sync_with_stdio(false); cin.tie(nullptr); cout.tie(nullptr);
int n; cin >> n;
query(n / 2);
bool ok = query(1);
if (ok == 1){
query(n / 2 - 1);
for (int i = 2; i < n / 2; i++){
query(i);
query(n / 2 - i);
}
}
else {
query(n);
for (int i = 2; i < n / 2; i++){
query(i);
query(n - i + 1);
}
}
cout << "= " << c << endl;
cout.flush();
return 0;
}
| # | 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... |