#include #include #include int ask(int x, int y, int z) { std::cout << "? " << x << " " << y << " " << z << std::endl; int ret; std::cin >> ret; return ret; } int main(){ int x, y, z; int r = 101; int l = -101; while(r - l > 1) { int mid = (r + l) / 2; if(ask(mid, 0, 0) > ask(mid + 1, 0, 0)) { l = mid; } else { r = mid; } } x = r; r = 101; l = -101; while(r - l > 1) { int mid = (r + l) / 2; if(ask(0, mid, 0) > ask(0, mid + 1, 0)) { l = mid; } else { r = mid; } } y = r; r = 101; l = -101; while(r - l > 1) { int mid = (r + l) / 2; if(ask(0, 0, mid) > ask(0, 0, mid + 1)) { l = mid; } else { r = mid; } } z = r; std::cout << "! " << x << " " << y << " " << z << std::endl; }