#include using namespace std; int main() { // [lower, upper) int lower = 1; int upper = 1000000001; while (lower + 1 != upper) { int middle = (lower + upper) / 2; cout << "? " << middle << endl << flush; int yes; cin >> yes; if (yes) { lower = middle; } else { upper = middle; } } cout << "! " << lower << endl << flush; return 0; }