헥스
시간 제한1초메모리 제한128 MB
크기 n인 헥스 판이 주어질 때, 검은색이나 흰색이 각자 연결해야 하는 변 사이에 경로를 완성했는지 판정한다.
문제
헥스(Hex)는 육각형 칸으로 이루어진 마름모 모양의 판 위에서 두 명이 겨루는 게임이다. 게임을 시작할 때 모든 칸은 비어 있다. 두 사람은 번갈아 가며 자기 색(검은색 또는 흰색)의 돌을 아무 빈 칸에나 하나씩 놓는다.
검은색의 목표는 판의 왼쪽 위 변과 오른쪽 아래 변을, 모두 검은색 돌이 놓인 서로 인접한 칸들의 경로로 잇는 것이다. 흰색은 오른쪽 위 변과 왼쪽 아래 변을 흰색 돌의 경로로 이으려 한다. 마름모의 꼭짓점에 있는 칸은 그 꼭짓점에서 만나는 두 변 모두에 속하는 것으로 본다.
검은색이 먼저 둔다. 헥스에는 판이 모두 채워지면 반드시 승자가 존재한다는 성질이 있다. 즉 모든 칸이 채워졌는데 한 쪽에 잇는 경로가 없다면, 반드시 다른 쪽에는 경로가 있다.
어떤 게임 상황이 주어졌을 때, 어느 쪽이 이겼는지, 또는 아직 게임이 끝나지 않았는지 판정하라.
입력
첫째 줄에 테스트 케이스의 수(최대 100)가 주어진다. 각 테스트 케이스는 다음과 같이 주어진다.
- 한 줄에 정수 (): 판의 크기(각 변에 놓인 칸의 수).
- 개의 줄, 각 줄에 개의 문자가 주어지며 판의 대각선들을 나타낸다. 번째 줄은 번째 대각선의 내용을 나타내며, 왼쪽 위 변을 따라 놓인 대각선이 가장 먼저, 오른쪽 아래 변을 따라 놓인 대각선이 가장 마지막에 온다. 한 줄 안에서 첫 번째 문자는 왼쪽 아래 변에 있는 칸을, 마지막 문자는 오른쪽 위 변에 있는 칸을 나타낸다. 각 문자는
B(검은 돌),W(흰 돌),.(빈 칸) 중 하나이다.
검은 돌의 개수는 흰 돌의 개수와 같거나 정확히 하나 더 많다. 한 쪽이 이미 몇 수 전에 이겨 있는 상황일 수도 있다.
출력
각 테스트 케이스마다 게임 상태를 나타내는 Black wins, White wins, Not finished 중 하나를 한 줄에 출력한다.