Cod sursa(job #2943483)

Utilizator divadddDavid Curca divaddd Data 21 noiembrie 2022 00:53:12
Problema Cbinteractiv Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.49 kb
#include <iostream>

using namespace std;
int n,st,dr,ans,sol;

int main()
{
    cin >> n;
    st = 1, dr = n;
    /// 0 0 0 0 1 1 1 1 1
    ///         ^
    while(st <= dr){
        int mid = (st+dr)/2;
        cout << "? " << mid << "\n";
        cout.flush();
        cin >> ans;
        if(ans){
            sol = mid;
            dr = mid-1;
        }else{
            st = mid+1;
        }
    }
    cout << "! " << sol << "\n";
    cout.flush();
    return 0;
}