Cod sursa(job #2821190)

Utilizator francescom_481francesco martinut francescom_481 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;
}