Cod sursa(job #2757659)
Utilizator | Data | 5 iunie 2021 17:19:46 | |
---|---|---|---|
Problema | Cbinteractiv | Scor | 100 |
Compilator | cpp-64 | Status | done |
Runda | Arhiva educationala | Marime | 0.49 kb |
#include <iostream>
using namespace std;
int N;
int main()
{
cin >> N;
int le = 1, ri = N;
int best;
while(le <= ri) {
int mid = (le + ri) / 2;
cout << "? " << mid << "\n";
cout.flush();
int x;
cin >> x;
if(x == 0) {
le = mid + 1;
}
else {
best = mid;
ri = mid - 1;
}
}
cout << "! " << best << "\n";
cout.flush();
return 0;
}