Pagini recente » Cod sursa (job #1556311) | Diferente pentru utilizator/theory intre reviziile 2 si 4 | Monitorul de evaluare | Cod sursa (job #1830530) | Cod sursa (job #2757659)
#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;
}