Pagini recente » Cod sursa (job #3365076) | Cod sursa (job #3366552) | Monitorul de evaluare | Cod sursa (job #3366545) | Cod sursa (job #3365644)
#include <bits/stdc++.h>
using i64 = long long;
const i64 INF = 1e18;
void solve()
{
int st = 1, dr = 1e9;
std::cin >> dr;
int rez = 0;
while (st <= dr) {
int mid = (st + dr) / 2;
std::cout << "? " << mid << std::endl;
int response;
std::cin >> response;
assert(response != -1);
if (response == 1) {
dr = mid - 1;
rez = mid;
} else {
st = mid + 1;
}
}
std::cout << "! " << rez << std::endl;
}
signed main(void)
{
//freopen("podm.in", "r", stdin);
//freopen("podm.out", "w", stdout);
std::ios::sync_with_stdio(false);
std::cin.tie(nullptr);
int tt = 1;
while (tt--) {
solve();
}
}