HackerNews

すべての数独パズルを解く

Solving Every Sudoku Puzzle (2006)

https://norvig.com/sudoku.html


この文章では、数独パズルを解く方法について説明されています。数独は81の正方形から成るグリッドで、各ユニット(列、行、またはボックス)には1から9の数字が一度ずつ現れる必要があります。数独を解くためには、制約伝播と検索という2つの考え方が用いられます。記事では、数独の表記法やそれに関する前提知識、Pythonを用いたプログラミングの実装方法が解説されています。具体的には、ユニットやピア(共通のユニットを持つ正方形)を定義し、それを基にして数独を効率よく解く手法を示します。全体で約一頁のコードで主なアイデアが表現され、追加機能には二頁が必要とされています。数独の基本的なルールや、その計算法を簡潔に理解できる内容となっています。