시간 제한메모리 제한제출정답맞힌 사람정답 비율
2 초 128 MB110151429.787%

문제

세준이는 5×5크기의 사각형에 1부터 25까지의 수를 채워넣으려고 한다. 또, 각각의 행에 대해 모든 수는 왼쪽부터 오른쪽으로 커져가는 순서로 적으려고 한다. 그런데, 어떤 칸은 이미 숫자가 채워져 있는데, 적혀 있는 수는 한 행에 하나를 넘지 않는다. 세준이는 남은 칸을 채워야 한다.

현재 5×5크기의 사각형이 주어지면 마저 채워서 출력하는 프로그램을 작성하시오.

불가능한 경우에는 -1을 출력하고, 답이 여러개인 경우에는 첫 행 첫 열이 작은 것을 출력한다. 만약 같은 경우에는 그다음 열이 작은 것을 출력하고 같을 경우에도 위와 같이 계속 해 나간다.

입력

총 5개의 줄에 5개의 수가 주어진다. 빈 칸은 0으로 주어진다.

출력

5개의 줄에 정답을 출력한다. 불가능한 경우에는 -1을 출력한다.

예제 입력 1

0 0 0 0 0
0 0 0 0 0
0 0 0 0 0
0 0 0 0 0
0 0 0 0 0

예제 출력 1

1 2 3 4 5
6 7 8 9 10
11 12 13 14 15
16 17 18 19 20
21 22 23 24 25

예제 입력 2

0 0 20 0 0
0 0 0 0 0
0 0 0 5 0
0 0 0 0 0
0 0 0 0 0

예제 출력 2

1 6 20 21 22
7 8 9 10 11
2 3 4 5 12
13 14 15 16 17
18 19 23 24 25

예제 입력 3

0 0 0 0 0
0 0 0 0 24
0 0 0 0 0
0 0 0 0 0
21 0 0 0 0

예제 출력 3

-1

예제 입력 4

0 0 15 0 0
2 0 0 0 0
0 0 0 7 0
0 0 16 0 0
0 0 0 0 21

예제 출력 4

1 3 15 17 18
2 8 9 10 22
4 5 6 7 23
11 12 16 24 25
13 14 19 20 21

출처