Cod sursa(job #3152173)

Utilizator andiRTanasescu Andrei-Rares andiR Data 24 septembrie 2023 11:07:37
Problema Cbinteractiv Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.83 kb
#include <iostream>
#include <fstream>
#include <algorithm>
#include <cmath>
#include <unordered_map>
#include <set>
#include <queue>
#include <stack>
#include <deque>
#include <iomanip>
#include <vector>
#include <bitset>

#pragma GCC optimize("O3")
#define fi first
#define se second
#define pb push_back
#define pf push_front

using namespace std;
ifstream fin ("dijkstra.in");
ofstream fout ("dijkstra.out");
typedef long long ll;
const ll Nmax=5e4+5, inf=(ll)1e15+5;
using pii=pair<int, int>;

int n;
int main()
{
    cin>>n;
    int l=0, r=n, sol;
    bool ok;
    while (l<=r){
        int mij=(l+r)/2;
        cout<<"? "<<mij<<endl;
        cin>>ok;
        if (!ok)
            l=mij+1;
        else{
            sol=mij;
            r=mij-1;
        }
    }
    cout<<"! "<<sol;
    return 0;
}