Pagini recente » Cod sursa (job #3221545) | Cod sursa (job #328492) | Diferente pentru problema/revolve intre reviziile 13 si 37 | Cod sursa (job #3283173) | Cod sursa (job #2756003)
#include <bits/stdc++.h>
using namespace std;
int main()
{
int n;
cin >> n;
int left = 1, right = n;
while(left < right) {
int mid = (left + right) >> 1;
cout << "? " << mid << "\n";
fflush(stdout);
int ans;
cin >> ans;
if(ans == 0) {
left = mid + 1;
}
else if(ans == 1) {
right = mid;
}
else {
return 0;
}
}
cout << "! " << left;
return 0;
}