「数独の一般解法はあるのか?」と聞かれたら目的によって幾通りも提案されているよ、と答えよう。もし、final answer (最終的な答え)だけを求めたいのならば、数学的な方法やそのアルゴリズは簡単である。唯一解であろうと、多数解であろうとパソコンレベルで数秒とはかからない。問題は条件付き多変数連立方程式の数値解を求める問題だから、いろいろな最適化手法が応用できるし、Dynamic Programig とか、ブロックデザインとかグラフ理論など応用すればいろんな方法で可能であるし、実際この種のフリーソフトはよく出回っているようだ。
数独の面白さは、鉛筆と消しゴムをつかって解くことにある。数字の配列の特徴を考慮した探索技術を駆使して final answer に到達したときの達成感は高度な technic であれば、なおさら高まる。一手一手の中間段階で使われる探索方法が明示されるとき、「理詰め」で解くといわれるようだ。PCアシストは問題ではない。今は数学の試験に電卓を使ってもよいのと同じである。
この手のソフトも数多く出回っている。PCの使用と「理詰め」とは直接関係がないし、また、試行錯誤法とも全く違った概念である。具体的にその説明から入っていこう。
Q56 の解答 Pleasant 382 sec
「11」 + 「20」 + 「16」 + 「4」 + 「19」 = { 70 }
Q58 の解答 Pleasant 320 sec
「16」 + 「2」 + 「15」 + 「12」 + 「25」 = { 70 }
0 件のコメント:
コメントを投稿