Cod sursa(job #3159881)

Utilizator CipriEuCruceanu Ciprian Constantin CipriEu Data 22 octombrie 2023 13:40:57
Problema Cbinteractiv Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.38 kb
#include <iostream>
using namespace std;
int n, x, st, dr, m;
int main(){
    cin>>n;
    st = 1; dr = n;
    do{
        m = (st+dr)/2;
        cout<<"? "<<m<<"\n"; cout.flush();
        cin>>x;
        if(st==dr) break;
        if(x == -1) return 0;
        if(x == 0) st = m+1;
        if(x == 1) dr = m;
    }while(st<=dr);
    cout<<"! "<<m<<"\n"; cout.flush();
}