題目鏈結
數獨是一種傳統益智遊戲,你需要把乙個 9×9 的數獨補充完整,使得圖中每行、每列、每個 3×3 的九宮格內數字 1∼9 均恰好出現一次。
請編寫乙個程式填寫數獨。
輸入共 9 行,每行包含乙個長度為 9 的字串,用來表示數獨矩陣
其中的每個字元都是 1∼9 或 .(表示尚未填充)。
輸出補全後的數獨矩陣。
資料保證有唯一解。
.2738. .1.
.1. . .6735
. . . . . . .29
3.5692.8.
. . . . . . . . .
.6.1745.3
64. . . . . . .
9518 . . . 7.
. 8 . . 6534.
527389416
819426735
436751829
375692184
194538267
268174593
643217958
951843672
782965341
#include
#include
#include
#include
using
namespace std;
const
int n=10;
bool row[n]
[n],col[n]
[n],cube[3]
[3][
n];char map[n]
[n];
bool
dfs(
int x,
int y)
if(x==9)
//如果都填滿了,則輸出;
if(map[x]
[y]!=
'.')
//如果有數直接跳過
return
dfs(x,y+1)
;for
(int i=
0;i<
9;i++)}
return
false;}
intmain()
}}dfs(0,
0);return0;
}
數獨簡單版(搜尋 剪枝)
數獨是一種傳統益智遊戲,你需要把乙個 9 9 9 9 的數獨補充完整,使得圖中每行 每列 每個 3 3 3 3 的九宮格內數字 1 9 1 9 均恰好出現一次。請編寫乙個程式填寫數獨。輸入格式 輸入共 9 9 行,每行包含乙個長度為 9 9 的字串,用來表示數獨矩陣。其中的每個字元都是 1 9 1 ...
AcWing 1613 數獨簡單版(DFS)
題目鏈結 數獨是一種傳統益智遊戲,你需要把乙個 9 9 的數獨補充完整,使得圖中每行 每列 每個 3 3 的九宮格內數字 1 9 均恰好出現一次。請編寫乙個程式填寫數獨。輸入格式 輸入共 9 行,每行包含乙個長度為 9 的字串,用來表示數獨矩陣。其中的每個字元都是 1 9 或 表示尚未填充 輸出格式...
數獨高階版求解
請你將乙個16x16的數獨填寫完整,使得每行 每列 每個4x4十六宮格內字母a p均恰好出現一次。保證每個輸入只有唯一解決方案。輸入格式 輸入包含多組測試用例。每組測試用例包括16行,每行一組字串,共16個字串。第i個字串表示數獨的第i行。字串包含字元可能為字母a p或 表示等待填充 測試用例之間用...