Problem F: 삼목(tic-tac-toe) 게임 판정하기

Problem F: 삼목(tic-tac-toe) 게임 판정하기

Time Limit: 1 Sec  Memory Limit: 128 MB
Submit: 521  Solved: 71
[Submit] [Status] [Web Board] [Creator:]

Description

삼목(tic-tac-toe)  게임은 3x3 보드에서 두 사람이 번갈아 가며 돌을 두면서 같은 돌이 나란히 3개가 놓이면 이기는 게임이다.


tic tac toe 이미지 검색결과 


삼목 게임의 진행 과정에서 나타날 수 있는 보드 형태에 따라 정상적인 게임 진행 중인지 아닌지, 승부가 났다면 누가 이겼는지를 판단하는 프로그램을 작성하시오. 입력은 1, 2로 들어오며 항상 1이 선수로 시작한다고 가정한다. 이 때 보드 상에 놓여진 1과 2의 개수와 위치를 판단하여 현재 게임이 정상적으로 번갈아 두고 있는 상태인지 아닌지, 만약 정상적인 상태로 게임이 종료되었다면 누가 이겼는지, 아니면 비겼는지를 출력한다. 모든 돌이 놓이기 전에 승부가 났다면 더 이상 돌을 두지 않아야 정상이다.


Input

첫 줄에 테스트케이스 수(t, 1 <= t <= 10)가 입력된다. 다음 줄부터 보드의 상태를 나타내는 숫자 0, 1, 2가 3 x 3 행렬 형태로 t 세트만큼 입력된다. 이 때, 0은 빈 공간, 1은 1번 선수가 둔 공간, 2는 2번 선수가 둔 공간을 의미한다.


Output

각 테스트케이스별로 보드의 상태를 확인하여 승부가 나지 않았는데 정상적인 상태이면 YES, 비정상적인 상태이면 NO를 출력하고 정상적인 상태에서 게임이 종료되었다면 누가 이겼는지를 1 또는 2로 구분하여 출력하고, 만약 비긴 경우라면 DRAW를 한 줄에 하나씩 출력한다.

Sample Input Copy

4
0 0 0
0 1 0
0 0 0
1 2 2
2 1 1
2 1 1
0 2 2
1 1 2
2 2 0
2 1 1
1 2 2
1 2 1

Sample Output Copy

YES
1
NO
DRAW