#author("2022-01-16T14:14:06+00:00;2022-01-10T10:25:25+00:00","","") #author("2022-01-16T14:15:53+00:00;2022-01-10T10:25:25+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) 解は "projecteuler.net/project/images/p096_2.png" を url 欄にコピーして表示 解は "projecteuler.net/project/images/p096_2.png" を url 欄にコピーしてリターンキーを押す(ダブルクオートの中身) うまく作られている"数独"パズルは, 選択肢を消去するために"仮定とテスト"方式を用いる必要があるかもしれないが, ただ一つの解を持ち, 論理によって解くことができる(これについては様々な意見がある). 探索の複雑さがパズルの難易度を決定する; 上に挙げた例は, 単純で直接的な推論によって解く事ができるため, 簡単であると考えられる. 6kバイトのテキストファイル "projecteuler.net/project/resources/p096_sudoku.txt" (url 欄にコピーして,表示された内容を保存) (ダブルクオートの中身を url 欄にコピーしてリターンキー。表示された内容を保存) にはただ一つの解を持つ, 様々な難易度の50の"数独"パズルが含まれている(上の例題はこのファイルにおける最初のパズルである). 50すべてのパズルを解き, それぞれの解答の左上隅にある3桁の数の合計を求めよ; 例えば483は上の解答例の左上隅の3桁の数である. IP:115.30.170.224 TIME:"2022-01-16 (日) 23:15:53" REFERER:"http://odz.sakura.ne.jp/projecteuler/index.php?cmd=edit&page=Problem+96" USER_AGENT:"Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:96.0) Gecko/20100101 Firefox/96.0"