Cod sursa(job #2821190)
Utilizator | Data | 22 decembrie 2021 11:27:08 | |
---|---|---|---|
Problema | Cbinteractiv | Scor | 100 |
Compilator | cpp-64 | Status | done |
Runda | Arhiva educationala | Marime | 0.49 kb |
#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;
}