数独ボード「マーク機能についての補足」
(6)
2013-6-1 記

数独ボード「マーク機能についての補足」


現在の最新版は V3.1 です。

   数独ボード V3.1 をリリースしました。
   ここでは、新マーク機能について説明しています。

▼マーク機能とは、データセルに印を付けておいて、それ以後の「先読み」の手が失敗だと分かった時点で、それまでの手をキャンセルしマークした地点からやり直すためのものである。このマークを何重にでもネストして指定できるようになっているのが特徴である。詳しくは「説明書」を参照してください。

▼ところで、マーク機能にはもう一つ別の役割がある。実は隠し機能として開発者の私だけが使っていたのだが、それを公開することにした。
 隠し機能としていた理由は、私の問題の解き方に依存する機能なので一般的ではないと思ったからである。

・この新しいマーク機能では、データセルではなくメモセル上に印を付けることができる。通常モードでも先読みモードでも、どちらでも利用することができる。
 例題で説明することにしよう。

▼たとえば、次の問題を考えてみよう(この問題は 升尾梅世氏 の作品である)。


 普通に解いていけば、次の状態までは容易に進むことができる。この先は少し難しいので先読み機能を利用することにしよう。

・「先読み」ボタンを押す。
 最初に「ヒント要求」を利用して各メモセル上に「候補」を表示する。

・候補の数が多いものから少ないものまで色々あるが、最も少ない所から攻めていくのが常道である。候補のリストを順にチェックしていって、2個残っている所を捜す。今まで私が取り組んだ問題の中で2個残っていなかったものはないから、多分あるはずである。もし1個しか残っていない所があったら、それは自明な手を見逃していたことになる(その場合は、数を設定して「確定」ボタンを押す。そして「ヒント要求」で「候補」を作り直す)。

・次に「候補」に2個残っているメモセルをすべてマークする。
 この例では8か所ある。

・先読みモードに入った最初の時点で、先読みで攻める場所をマークして記録するのである。この例では8か所の中から最適な攻め口を見付ける必要がある。

・ここで注目すべきところは、第8ブロック(最下段中央のブロック)である。D8F8の位置にそれぞれが候補として記録されている。このように、特定のブロック(または行、列でもよい)の中に同じ組み合わせの候補が二つ(ここでは“1”と“4”)含まれている場合には、その他のセルに“1”と“4”は現れることはない。このような特別な場所はマークしておくと便利である。それには、このメモセルをもう一度マークする。そうすると、黄色が薄紫色になる(もう一度マークすると元の白色になる)。

・つまりメモセルをマークすると、白色⇒黄色⇒薄紫色⇒白色の順にサイクリックに色を替えられるようになっている。
 したがって、第8ブロックのメモセルは以下のように修正することができる。

・この問題で最初のとっかかりとすべき場所はどこがよいか? それは自分で発見してみてください。最終解は以下のようになります。

 現在の最新版は V3.1 です。