Cod sursa(job #3147418)

Utilizator Traian_7109Traian Mihai Danciu Traian_7109 Data 26 august 2023 10:46:17
Problema Cbinteractiv Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.78 kb
#include <bits/stdc++.h>
#define ll long long 
#define ull unsigned long long 
#define ld long double 
#define pii pair<int, int>
#define pll pair<ll, ll>
#define pb push_back
#define eb emplace_back

using namespace std;

bool verify(int number)
{
    cout << "? " << number << endl;
    int ans;
    cin >> ans;
    return ans;
}

signed main()
{
    ios_base :: sync_with_stdio(false);
    cin.tie(nullptr);
    cout.tie(nullptr);
    
    int n;
    cin >> n;
    int left = 1, right = n, ans = 0;
    while (left <= right) 
    {
        int middle = (left + right) / 2;
        if (verify(middle))
        {
            ans = middle;
            right = middle - 1;
        }
        else
        {
            left = middle + 1;
        }
    }
    cout << "! " << ans << endl;
    return 0;
}