#include <cstdio>
#include <stdio.h>
#include <stdbool.h>
#include <iostream>
#include <map>
#include <vector>
#include <climits>
#include <stack>
#include <string>
#include <queue>
#include <algorithm>
#include <set>
#include <unordered_set>
#include <unordered_map>
#include <cmath>
#include <cctype>
#include <bitset>
#include <iomanip>
#include <cstring>
#include <numeric>
#include <cassert>
#include <random>
#include <chrono>
#include <fstream>
using namespace std;
#define int long long
#define pii pair<int, int>
#define mp make_pair
#define pb push_back
#define fi first
#define se second
int n;
bool query(int x, int y){
if (x<=0||y<=0||x>n||y>n)return 0;
cout<<"examine "<<x<<" "<<y<<endl;
string s;
cin>>s;
return (s=="true");
}
int32_t main(){
//ios_base::sync_with_stdio(0);
//cin.tie(0);
//cout.tie(0);
int x, y, m;
cin>>n>>x>>y;
int top=x, down=x, left=y, right=y;
for (int i=0; i<32; ++i)if (!query(top+(1<<i), y)){
for (int j=i-1; j>=0; --j)if (query(top+(1<<j), y))top+=(1<<j);
break;
}
for (int i=0; i<32; ++i)if (!query(down-(1<<i), y)){
for (int j=i-1; j>=0; --j)if (query(down-(1<<j), y))down-=(1<<j);
break;
}
for (int i=0; i<32; ++i)if (!query(x, left-(1<<i))){
for (int j=i-1; j>=0; --j)if (query(x, left-(1<<j)))left-=(1<<j);
break;
}
for (int i=0; i<32; ++i)if (!query(x, right+(1<<i))){
for (int j=i-1; j>=0; --j)if (query(x, right+(1<<j)))right+=(1<<j);
break;
}
x=(top+down)/2, y=(left+right)/2, m=top-down+1;
for (int i=-2; i<=2; ++i)for (int j=-2; j<=2; ++j){
int nx=x+i*m, ny=y+j*m;
if ((i+2)%2==(j+2)%2&&query(nx, ny)&&query(nx+2*m, ny)&&query(nx-2*m, ny)&&query(nx, ny+2*m)&&query(nx, ny-2*m)){
cout<<"solution "<<nx<<" "<<ny<<endl;
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... |