#include using namespace std; int a[205][205]; int xac,yac,hac,x,y,stx,drx=200,sty,dry=200,xnou,ynou; queue cox; queue coy; int dx[]={-1,0,1,0}; int dy[]={0,-1,0,1}; bool valid (int X , int Y) { if (X>=0 && X<=200 && Y>=0 && Y<=200) return 1; return 0; } int main() { cout<<"0 0"<<'\n'; cout.flush(); cin>>hac; a[0][0]=hac; if (!hac) return 0; cout<<"200 200"<<'\n'; cout.flush(); cin>>hac; a[200][200]=hac; if (!hac) return 0; while (hac && stx>hac; a[x][y]=hac; if (!hac) return 0; if (hac>0) { drx=x; dry=y; } if (hac<0) { stx=x; sty=y; } } x=(stx+drx)/2; y=(sty+dry)/2; if (!a[x][y]) { cout<>hac; a[x][y]=hac; if (!hac) return 0; } cox.push(x); coy.push(y); while (!cox.empty()) { x=cox.front(); y=coy.front(); cox.pop(); coy.pop(); for (int i=0;i<4;i++) { xnou=x+dx[i]; ynou=y+dy[i]; if (valid(xnou,ynou) && !a[xnou][ynou]) { cout<>hac; if (!hac) return 0; a[xnou][ynou]=hac; cox.push(xnou); coy.push(ynou); } } } return 0; }