답안 #890332

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
890332 2023-12-21T03:36:48 Z UmairAhmadMirza Aliens (IOI07_aliens) C++17
40 / 100
2 ms 600 KB
#include <bits/stdc++.h>
using namespace std;
#define int long long
signed main(){
	int n,x0,y0;
	cin>>n>>x0>>y0;
	//step1 is find M and center (to save query)
	//find center x take at most 101 query
	int bx=x0-1,ux=x0+1;
	string rep;
	while(bx>0){
		cout<<"examine "<<bx<<' '<<y0<<endl;
		cin>>rep;
		if(rep=="false")
			break;
		else
			bx--;
	}
	while(ux<=n){
		cout<<"examine "<<ux<<' '<<y0<<endl;
		cin>>rep;
		if(rep=="false")
			break;
		else
			ux++;
	}
	//find center y take at most 101 query
	int by=y0-1,uy=y0+1;
	while(by>0){
		cout<<"examine "<<x0<<' '<<by<<endl;
		cin>>rep;
		if(rep=="false")
			break;
		else
			by--;
	}
	while(uy<=n){
		cout<<"examine "<<x0<<' '<<uy<<endl;
		cin>>rep;
		if(rep=="false")
			break;
		else
			uy++;
	}
	int cx=(bx+ux)/2;
	int cy=(by+uy)/2;
	int m=(ux-bx)-1;
	//successfully found center of the current block and M as well
	//find coordinates of its current block
	int curx=cx-(2*m),cury=cy-(2*m);
	int xcor=0,ycor=0;
	while(curx>0){
		cout<<"examine "<<curx<<' '<<cy<<endl;
		cin>>rep;
		if(rep=="false")
			break;
		else{
			curx-=2*m;
			xcor--;
		}
	}
	while(cury>0){
		cout<<"examine "<<cx<<' '<<cury<<endl;
		cin>>rep;
		if(rep=="false")
			break;
		else{
			cury-=2*m;
			ycor--;
		}
	}
	//above 
	curx=cx+(2*m);
	cury=cy+(2*m);
	while(curx<=n){
		cout<<"examine "<<curx<<' '<<cy<<endl;
		cin>>rep;
		if(rep=="false")
			break;
		else{
			curx+=2*m;
			xcor++;
		}
	}
	while(cury<=n){
		cout<<"examine "<<cx<<' '<<cury<<endl;
		cin>>rep;
		if(rep=="false")
			break;
		else{
			cury+=2*m;
			ycor++;
		}
	}
	cx+=(m*xcor);
	cy+=(m*ycor);
	cout<<"solution "<<cx<<' '<<cy<<endl;
	return 0;
}
# 결과 실행 시간 메모리 Grader output
1 Correct 0 ms 344 KB Output is correct
2 Correct 0 ms 344 KB Output is correct
# 결과 실행 시간 메모리 Grader output
1 Correct 0 ms 344 KB Output is correct
2 Correct 1 ms 600 KB Output is correct
# 결과 실행 시간 메모리 Grader output
1 Correct 1 ms 344 KB Output is correct
2 Correct 1 ms 344 KB Output is correct
# 결과 실행 시간 메모리 Grader output
1 Correct 0 ms 344 KB Output is correct
2 Correct 1 ms 344 KB Output is correct
# 결과 실행 시간 메모리 Grader output
1 Runtime error 2 ms 440 KB Execution killed with signal 13
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Correct 0 ms 344 KB Output is correct
2 Runtime error 1 ms 432 KB Execution killed with signal 13
3 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Correct 0 ms 344 KB Output is correct
2 Runtime error 1 ms 440 KB Execution killed with signal 13
3 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Runtime error 1 ms 436 KB Execution killed with signal 13
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Runtime error 2 ms 432 KB Execution killed with signal 13
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Runtime error 1 ms 440 KB Execution killed with signal 13
2 Halted 0 ms 0 KB -