#author("2022-01-10T10:25:24+00:00","","") *[[Problem 96:https://projecteuler.net/problem=96]] 「数独」 [#oa2b2645] "数独"(日本語でナンバープレイスのこと)とは人気があるパズルの名前である. 起源は不明だが, その評判はラテン語で"Squares"と呼ばれる同様な, そしてはるかに難しいパズルを考案した レオンハルト・オイラーの貢献によるものに違いない. しかしながら, "数独"パズルの目的は それぞれの行, 列が3×3の枠を含む9×9の格子の空白(もしくは0)をそれぞれ1から9の数字で置き換えることである. 下に, 一般的なパズルの開始状態とその解答の例がある. #ref(https://projecteuler.net/project/images/p096_1.png,center,nolink) うまく作られている"数独"パズルは, 選択肢を消去するために"仮定とテスト"方式を用いる必要があるかもしれないが, ただ一つの解を持ち, 論理によって解くことができる(これについては様々な意見がある). 探索の複雑さがパズルの難易度を決定する; 上に挙げた例は, 単純で直接的な推論によって解く事ができるため, 簡単であると考えられる. 6kバイトのテキストファイル&ref(project/resources/p096_sudoku.txt);(右クリックで,"名前をつけてリンク先を保存") にはただ一つの解を持つ, 様々な難易度の50の"数独"パズルが含まれている(上の例題はこのファイルにおける最初のパズルである). 50すべてのパズルを解き, それぞれの解答の左上隅にある3桁の数の合計を求めよ; 例えば483は上の解答例の左上隅の3桁の数である.