#include<bits/stdc++.h>
using namespace std;
#define int long long
bool f(int x,int y){
cout<<"examine "<<x<<" "<<y<<endl;
string s; cin>>s;
return s=="true";
}
signed main(){
int n,x,y; cin>>n>>x>>y;
int l=x,r=x;
while(f(--l,y)); ++l;
while(f(++r,y)); --r;
int fx=(l+r)>>1,m=l-r+1;
l=y,r=y;
while(f(fx,--l)); ++l;
while(f(fx,++r)); --r;
int fy=(l+r)>>1;
int x0=fx,x1=fx,y0=fy,y1=fy;
for(int i=fx+2*m;i<=fx+4*m;i+=2*m) if(f(i,fy)) x1=i;
for(int i=fx-2*m;i>=fx-4*m;i-=2*m) if(f(i,fy)) x0=i;
for(int i=fy+2*m;i<=fy+4*m;i+=2*m) if(f(fx,i)) y1=i;
for(int i=fy-2*m;i>=fy-4*m;i-=2*m) if(f(fx,i)) y0=i;
for(int i=1;i<=2;++i){
if(f(fx+i*m,fy+i*m)) x1=max(x1,fx+i*m),y1=max(y1,fy+i*m);
if(f(fx+i*m,fy-i*m)) x1=max(x1,fx+i*m),y0=min(y0,fy-i*m);
if(f(fx-i*m,fy+i*m)) x0=min(x0,fx-i*m),y1=max(y1,fy+i*m);
if(f(fx-i*m,fy-i*m)) x0=min(x0,fx-i*m),y0=min(y0,fy-i*m);
}
int solx=(x0+x1)>>1,soly=(y0+y1)>>1;
cout<<"solution "<<solx<<" "<<soly<<'\n';
return 0;
}
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |