P14017

数独

难度 小学 算法入门 递归 DFS 回溯
讨论 统计 38通过 137提交 27.7%通过率 旧版界面
时间限制 1 秒 内存限制 128 MB

题目描述

数独(shù dú)是源自18世纪瑞士的一种数学游戏(一说起源于日本)。是一种运用纸、笔进行演算的逻辑游戏。玩家需要根据9×9盘面上的已知数字,推理出所有剩余空格的数字,并满足每一行、每一列、每一个粗线宫(3*3)内的数字均含1-9,不重复。

输入一个 9 \times 9的矩阵,表示数独的题面,要求填入其他数字,使得1-9每个数字在每一行、每一列和每一宫中都只出现一次。

题面可能没有解,也可能有多个解。

输入

输入一个 9 \times 9的矩阵,数字为1-9时是题面数字,数字为0表示为空,是需要填入的数字

输出

如果题面有解,输出任意解即可,

如果无解则输出"NO"

样例

样例 1
输入
0 0 0 0 1 6 9 3 0
8 0 0 3 0 0 0 0 0
2 0 0 0 9 5 0 0 0
7 0 8 0 0 0 0 2 0
3 0 4 0 0 0 6 0 7
0 5 0 0 0 0 3 0 8
0 0 0 4 5 0 0 0 9
0 0 0 0 0 7 0 0 3
0 4 6 2 3 0 0 0 0
输出
4 7 5 8 1 6 9 3 2 
8 1 9 3 2 4 5 7 6 
2 6 3 7 9 5 8 1 4 
7 9 8 6 4 3 1 2 5 
3 2 4 5 8 1 6 9 7 
6 5 1 9 7 2 3 4 8 
1 3 7 4 5 8 2 6 9 
9 8 2 1 6 7 4 5 3 
5 4 6 2 3 9 7 8 1
样例 2
输入
2 0 8 0 0 0 0 3 0
3 0 1 0 8 0 0 9 5
0 0 6 3 0 0 7 0 0
4 0 0 0 0 3 0 0 1
7 0 9 0 5 0 8 0 3
0 2 0 9 0 0 0 0 4
0 0 5 0 0 4 1 0 0
8 0 0 0 1 0 0 0 2
0 4 0 0 0 0 9 0 8
输出
NO

提示

Tab 缩进 · 提交后可在下方查看评测状态
请先登录后再提交