Cod sursa(job #2817113)
Utilizator | Data | 12 decembrie 2021 21:22:36 | |
---|---|---|---|
Problema | Cbinteractiv | Scor | 50 |
Compilator | cpp-64 | Status | done |
Runda | Arhiva educationala | Marime | 0.45 kb |
#include <iostream>
using namespace std;
int main()
{
int n,pas,poz = 1,ok;
cin >> n;
for (pas = 1;pas < n;pas <<= 1);
while (pas) {
if (poz + pas <= n) {
cout << "? " << poz + pas << "\n";
cout.flush();
cin >> ok;
if (!ok)
poz += pas;
}
pas >>= 1;
}
cout << "! " << poz + 1 << "\n";
cout.flush();
return 0;
}