Pagini recente » Cod sursa (job #3226884) | Cod sursa (job #2692872) | Cod sursa (job #833941) | Cod sursa (job #2629671) | Cod sursa (job #2751104)
#include <iostream>
using namespace std;
int n;
int query(int x)
{
int ret;
cout << "? " << x;
cout.flush();
cin >> ret;
return ret;
}
int main()
{
cin >> n;
int st = 0, dr = n, sol;
while (st <= dr)
{
int mid = (st + dr) / 2;
int status = query(mid);
if (status == 0)
{
st = mid + 1;
}
else if (status == 1)
{
dr = mid - 1;
sol = mid;
}
else
{
return -1;
}
}
cout << "! " << sol << '\n';
cout.flush();
return 0;
}