数独自動生成ソフト開発で学ぶ超初心者のためのC++マルチスレッドプログラミング入門
第1講 序章(周辺の説明とプログラミング体験)
第3話 理詰めで解くとは?
数独やナンプレのファンは、
仮定法を邪道な方法とみなします。
理詰めで解ける数独をクオリティーの高い数独とみなすからです。
ではその理詰めで解くとはどういう意味でしょうか。
私の開発したソフトを体験すると、
そこで自動生成される数独は次のような特徴を有しています。
ヒント数がどんなに少なかろうと、
必ず1つの数字に確定できる空欄が存在するということです。
そして、その1つの数字に確定できる空欄に数字を書き込むことによって、
再び、1つの数字に確定できる空欄が少なくとも1個存在します。
これを最後まで繰り返します。
ですから、仮定法は一切使う必要がありません。
そして、ナンプレ雑誌などで出題されているナンプレも全く同じです。
理詰めで解くとは、その1個の数字に確定できる空欄を論理的に探し出して解くことです。
もちろん、パズルですからいかなる方法で解こうが自由ですから、
仮定法で解いてもよいのですが、
理詰めで解けた時の達成感は仮定法で解いた時より圧倒的に大きいのです。
ですから、数独やナンプレのファンが仮定法を邪道な方法とみなすことには、
充分な理由があるのです。
つまり、皆さんに開発していただく数独自動生成ソフトは数独・ナンプレファンが
クオリティーが高いとみなす理詰めで解ける数独のみを自動生成するソフトなのです。
第2話へ 第4話へ
トップへ