틱택토
면접 대비시간 제한5초메모리 제한512 MB
3x3 틱택토 판이 주어질 때, 규칙상 불가능한지, 최선의 플레이로는 도달할 수 없는지, 두 완벽한 플레이어가 만들 수 있는지 판정한다.
문제
고고학자들이 고대 점토판을 발견했는데, 그 위에는 틱택토 게임이 새겨져 있었다.
틱택토는 두 명의 플레이어 'O'와 'X'가 번갈아 가며 격자의 칸을 채우는 종이와 연필 게임이다. 가로, 세로, 대각선 중 한 줄에 자신의 표시를 세 개 연속으로 놓은 플레이어가 승리한다.
Byteozavodsk 국립 역사 박물관의 직원인 당신은 이 게임 상태가 두 명의 뛰어난 플레이어에 의해 만들어질 수 있었는지 판정해야 한다.
입력
입력의 첫째 줄에는 테스트 케이스의 수를 나타내는 양의 정수 가 하나 주어진다. 테스트 케이스의 설명이 이어진다.
각 테스트 케이스는 세 줄로 이루어지며, 각 줄에는 세 문자가 있다. 번째 줄의 번째 문자는 점토판의 번째 행 번째 칸의 상태를 나타낸다. 가능한 값은 세 가지이다.
- "
."은 빈 칸을 나타낸다. - "
O"(큰 "o")는 첫 번째 플레이어가 표시한 칸을 나타낸다. - "
X"는 두 번째 플레이어가 표시한 칸을 나타낸다.
각 테스트 케이스 앞에는 빈 줄이 하나씩 온다.
출력
각 테스트 케이스마다 한 줄에 한 단어를 출력한다. 번갈아 두는 유효한 수의 나열로 이 게임 상태에 도달할 수 없으면 "INVALID", 도달할 수 있지만 두 플레이어 중 적어도 한 명이 뛰어나지 않은 경우에만 가능하면 "UNREACHABLE", 그렇지 않으면 "REACHABLE"을 출력한다.
힌트
가능하다면, 뛰어난 플레이어는 상대가 이후 어떻게 두더라도 자신이 이길 수 있게 만드는 수를 항상 둔다. 그것이 불가능하면 무승부로 이끄는 수를 둔다. 최악의 경우에는 아무 수나 둔다.