Pagini recente » Cod sursa (job #2908713) | Monitorul de evaluare | Cod sursa (job #1171500) | Diferente pentru utilizator/pddd intre reviziile 3 si 17 | Cod sursa (job #2821190)
#include <bits/stdc++.h>
using namespace std;
#define N 505
#define inf 100000000000000
int n, pas, p, ok;
int main()
{
cin >> n;
for(pas = 1 ; pas < n ; pas *= 2);
while(pas)
{
if(p+pas <= n)
{
cout << "? " << p+pas << '\n';
cout.flush();
cin >> ok;
if(ok == 0)
{
p += pas;
}
}
pas /= 2;
}
cout << "! " << p+1;
return 0;
}