| 시간 제한 | 메모리 제한 | 제출 | 정답 | 맞힌 사람 | 정답 비율 |
|---|---|---|---|---|---|
| 1 초 | 1024 MB | 665 | 196 | 146 | 29.376% |
위 그림은 $3^2 \times 3^2$ 서로소 스도쿠의 예시이다.
서로소 스도쿠는 스도쿠의 변형으로 간단한 숫자 퍼즐이다. 서로소 스도쿠는 $N^2 \times N^2$ 크기의 보드에서 진행되며 각 칸에는 정수 하나를 쓸 수 있다. 이 보드를 $N \times N$ 크기의 정사각 부분으로 나눈 $N^2$개의 영역들을 '블록'이라고 한다. 서로소 스도쿠의 목표는 다음 규칙을 만족하도록 빈칸에 수를 작성하는 것이다.
일부 칸이 작성된 서로소 스도쿠를 입력받았을 때, 규칙에 맞게 모든 빈칸에 수를 채우는 프로그램을 작성하시오.
첫 번째 줄에 $N$이 주어진다. $(2 \le N \le 10)$
두 번째 줄부터 $N^2$개의 줄에 걸쳐 서로소 스도쿠 보드가 주어진다. 그중 $i$번째 줄에는 $N^2$개의 정수가 공백으로 구분되어 주어진다. 이 중 $j$번째 수 $a_{ij}$는 $i$번째 행 $j$번째 열에 있는 수를 의미한다. $a_{ij}$가 $0$인 경우는 $i$번째 행 $j$번째 열이 빈칸임을 의미한다. $(0 \le a_{ij} \le 1\,000\,000;$ $a_{ij} \neq 1)$
입력으로 주어지는 서로소 스도쿠는 항상 규칙을 만족하며 빈칸이 항상 $1$개 이상이다. 모든 빈칸을 채울 수 없는 경우의 입력은 주어지지 않는다.
$N^2$개의 줄에 걸쳐 모든 빈칸을 채운 서로소 스도쿠를 출력한다. 그중 $i$번째 줄에는 $N^2$개의 정수를 공백으로 구분하여 출력한다. 이 중 $j$번째 수 $b_{ij}$는 $i$번째 행 $j$번째 열에 있는 수를 의미한다. $(2 \le b_{ij} \le 1\,000\,000)$
서로소 스도쿠의 모든 칸을 채우는 방법이 여럿인 경우는 그중 아무거나 하나를 출력한다.
2 4 0 5 0 0 0 0 0 0 0 0 0 0 2 0 3
4 77 5 13 15 13 8 11 49 9 13 10 13 2 7 3