문제 F: 올바른 스도쿠 답인가?

문제 F: 올바른 스도쿠 답인가?

실행시간 제한: 1 Sec  메모리사용 제한: 128 MB
제출: 19  통과: 5
[제출] [채점기록] [묻고답하기] [만든사람:]

문제 설명

스도쿠(일본어: 数独, Sudoku, 숫자넣기)는 숫자 퍼즐로, 가로 9, 세로 9칸으로 이루어져 있는 표에 1부터 9까지의 숫자를 채워 넣는 퍼즐이다. “숫자는 한 번씩만 쓸 수 있다”(数字は独身に限る 스지와 도쿠신니 가기루)를 줄인 말로 2005년 전 세계적으로 이 말과 퍼즐이 퍼져나갔다. 퍼즐을 푸는 방법은 같은 줄(가로, 세로)에는 1에서 9까지의 숫자를 한 번만 넣고, 3x3칸의 작은 격자 또한 1에서 9까지의 숫자가 겹치지 않게 들어가야 한다. 이 규칙을 따르는 스도쿠 정답의 한 예는 다음과 같다.







1에서 9까지의 숫자가 9x 9줄 입력된다고 할 경우 그 배열이 스도쿠 정답이 될 수 있는 배열인지 아닌지를 확인하는 프로그램을 작성하시오.

입력 설명

테스트 케이스의 수 T가 들어온다. (1 <= T <= 10)
그 다음 정수 배열이 9 x 9 형태(모든 숫자는 1에서 9까지의 한자리 수)로 T번 입력된다.

출력 설명

각 테스트 케이스마다 스도쿠 규칙을 따라 배열이 되어 있으면 Yes, 아니면 No를 출력한다.

입력 예시 Copy

2
5 3 4 6 7 8 9 1 2
6 7 2 1 9 5 3 4 8
1 9 8 3 4 2 5 6 7
8 5 9 7 6 1 4 2 3
4 2 6 8 5 3 7 9 1
7 1 3 9 2 4 8 5 6
9 6 1 5 3 7 2 8 4
2 8 7 4 1 9 6 3 5
3 4 5 2 8 6 1 7 9
5 3 4 6 7 8 9 1 2
1 7 2 1 9 5 3 4 8
6 9 8 3 4 2 5 6 7
8 5 9 7 6 1 4 2 3
4 2 6 8 5 3 7 9 1
7 1 3 9 2 4 8 5 6
9 6 1 5 3 7 2 8 4
2 8 7 4 1 9 6 3 5
3 4 5 2 8 6 1 7 9

출력 예시 Copy

Yes
No