#include using namespace std; using ll = unsigned long long; int main() { ll lb = 0, ub = (ll)(1e9+1); for ( int i = 0; i < 100; ++ i ) { if ( ub - lb < 2 ) break; ll const mid = lb + (ub - lb) / 2; cout << "? " << mid << endl; int cond; cin >> cond; (cond != 0 ? lb : ub) = mid; } cout << "! " << lb << endl; return 0; }