이 문제는 인터랙티브 문제이다.
크기의 격자로 이루어진 반찬통이 있다. 반찬통 속 단 한 칸에 메추리알이 놓여 있다.
당신은 한계를 시험하기 위해 눈을 가린 채로 젓가락을 사용하여 반찬통 안의 메추리알을 집기로 했다. 따라서 당신은 메추리알의 위치를 모른다.
당신은 젓가락질을 번 이하로 하여 메추리알을 잡아야 한다.
이 행동을 통해 메추리알을 잡았다면 프로그램을 즉시 종료해야 한다.
그렇지 않다면 메추리알은 다음과 같이 이동한다:
어떤 두 칸이 인접하다는 것은 두 칸이 어떤 한 모서리를 공유함을 의미한다. 꼭짓점만을 공유하는 두 칸은 인접한 칸이 아니다.
주어진 질문 횟수 안에 메추리알을 잡아 보자.
인터랙터는 적응적이다. 메추리알의 시작 위치와 이동할 방향은 미리 정해져 있지 않다.
첫째 줄에 격자의 크기를 나타내는 정수 이 주어진다.
예제는 입출력이 어떤 방식으로 이루어지는지 이해를 돕기 위해, 의도적으로 줄 간격을 조절하였습니다. 실제 입출력과 다름에 유의해 주세요.
예제에서 사용한 전략은 항상 정해진 제한 안에 메추리알을 찾을 수 있음이 보장되지 않는 방법임에 유의하세요.
당신은 아래의 질문를 최대 번 이하로 출력해야 한다.
가능한 범위를 벗어났거나 가능한 횟수를 초과하여 질문을 출력할 경우 틀렸습니다를 받는다.
질문을 출력한 이후, 당신은 쿼리에 대한 답변을 나타내는 정수 하나를 입력받아야 한다.
은 해당 칸에 메추리알이 없었으며, 메추리알이 규칙에 따라 이동했음을 의미한다.
은 해당 칸에 메추리알이 있었기에 당신이 메추리알을 잡았음을 의미한다.
답변으로 을 입력받았다면 프로그램을 즉시 종료해야 한다. 프로그램을 종료하지 않는다면 예상하지 못한 채점 결과를 받을 수 있다.
각 질문을 출력한 이후, 프로그램은 표준 출력을 flush해야 한다. 그렇지 않으면 시간 초과를 받을 수 있다.
각 언어에서 표준 출력을 flush하는 방법은 다음과 같다.