#include using namespace std; #define dbg(x) (cout<<#x<<" = "<<(x)<<'\n') typedef long long int lld; const int INF = (1LL << 30) - 1; const lld LINF = (1LL << 62) - 1; int N = 200; bool baga(int x, int y) { if (x >= 0 && y >= 0 && x < N && y < N) { printf("%d %d\n", x, y); fflush(stdout); int val; scanf("%d", &val); if (val == 0) return 1; } return 0; } int main() { cin.sync_with_stdio(false); int val; int lo = 0, hi = N - 1, mi, sol = N; for (; lo <= hi;) { mi = (lo + hi) / 2; printf("%d %d\n", mi, mi); fflush(stdout); scanf("%d", &val); if (val == 0) break; if (val < 0) lo = mi + 1; else { hi = mi - 1; sol = min(sol, mi); } } for (lo = 0, hi = sol; lo <= hi;) { mi = (lo + hi) / 2; printf("%d %d\n", sol, mi); fflush(stdout); scanf("%d", &val); if (val == 0) break; if (val < 0) lo = mi + 1; else hi = mi - 1; } for (lo = 0, hi = sol; lo <= hi;) { mi = (lo + hi) / 2; printf("%d %d\n", mi, sol); fflush(stdout); scanf("%d", &val); if (val == 0) break; if (val < 0) lo = mi + 1; else hi = mi - 1; } for (lo = sol - 1, hi = N - 1; lo <= hi;) { mi = (lo + hi) / 2; printf("%d %d\n", mi, sol - 1); fflush(stdout); scanf("%d", &val); if (val == 0) break; if (val < 0) lo = mi + 1; else hi = mi - 1; } for (lo = sol - 1, hi = N - 1; lo <= hi;) { mi = (lo + hi) / 2; printf("%d %d\n", sol - 1, mi); fflush(stdout); scanf("%d", &val); if (val == 0) break; if (val < 0) lo = mi + 1; else hi = mi - 1; } return 0; }