Cod sursa(job #2911423)
Utilizator | Data | 29 iunie 2022 12:57:46 | |
---|---|---|---|
Problema | Cbinteractiv | Scor | 100 |
Compilator | cpp-64 | Status | done |
Runda | Arhiva educationala | Marime | 0.48 kb |
#include <iostream>
using namespace std;
int dr;
int main()
{
cin >> dr;
int st = 1;
while (st <= dr)
{
if (st == dr)
{
cout << "! " << dr << '\n';
return 0;
}
int mid = (st + dr) >> 1;
cout << "? " << mid << '\n';
cout.flush();
int val;
cin >> val;
if (val == 1)
dr = mid;
else
st = mid + 1;
}
return 0;
}