超上級テクニック
1. Sword Fish, Jelly fish, ...
Sword FishとはX-wingの拡張版です。X-wingは
ある2つの横列に数字Xが入る可能性のあるマスがそれぞれ2箇所ずつしかない場合で、その2箇所のマスがともに同じ縦列に位置しているとき、その縦列の他のマスにはXははいらない (縦列と横列が逆のケースももちろん可)
というものでしたが、Sword fishは上の説明の2を3に置き換えたものです。
具体例です。ある盤面で6の入る可能性があるマスを調べたところ左の様になっていたとします。(以下配列はSudoku Susserのサンプルを利用しました。) 列c3, c5 c7にはそれぞれ3個または2個のマスにしか6が入る可能性がなく、それらのマスは列r4, r6, r8のいずれかに属しています。
この時、列r4, r6, r8の他のマスには6を入れることができません。(水色のマスに6が入ってしまうと、黄色の列のどこかで6を入れる場所が不足する)
上の例のようにSword Fishでは三つの列にかならずしも3箇所ずつ数字が入るマスが必要なわけではありません。極端な場合では、左図の様に2x2x2のSword Fishもアリです。 ここまで来れば多分予想はついていると思いますが、Jerry Fishとは4x4列のものを指します。 そして期待は裏切られず、5x5列のSquirmbagというものもあります。人間ではSword Fishでも発見するのにかなり苦労します。 Sword Fishのサンプルです。どこに魚がかくれているかわかりますか? 答えはこちら。
XY-Wingと同様のパターンです。これらは具体的な例を覚えるのではなくこういう考えがあるという程度の認識でよいと思います。(いうまでもありませんが、下の配列や組み合わせは一例にすぎません)
XYZ-wing:
xy, xyz, xzを候補にもつ3つのマスが左図の様な配置になっているとき、ピンクのマスにはxを入れることができません。WXYZ-wing:
xy, xw, xz, wxyzを候補にもつ4つのマスが左図の様な配置になっているとき、ピンクのマスにはxを入れることができません。Sue De Coq:
xy, wz, yz, ywu, xywuを候補に持つ5つのマスが左図の様な配置になっているとき、ピンクのマスにはxもyも、水色のマスにはwもzも入れることができません。これらはみなLocked Setの考えの応用とも言えます。あるユニット(列、ボックス)に存在するn個のマスに入る数字候補がn種類しかないとき、このn個のマスをLocked Setと呼びます。Locked Setの全てのマスからある数字候補を取り除くような手を打つことはできません。上記の3例はマス全てが同じユニットに属しているわけではないので、厳密にはLocked Setとは言えませんが、同様の理屈で成り立っています。
ここで挙げたwing系のテクニックは次章のAlmost Locked Setsでより一般化されます。
Locked Setがn種類の候補しか入らないn個のマスのセットだったのに対し、Almost Locked Setはn+1種類の数字候補を持つn個のマスのセットです。 一番単純なAlmost Locked Setは2つの数字候補を持つ1マスです。 左はWXYZ-wingの図ですがr2c3, r2c5, r3c7はそれぞれ一マスのAlmost Locked Setです。また、r2c358は3マスからなるAlmost Locked Setです。
ALSは複数のAlmost Locked Setsを利用するテクニックです。
上の例をつかって説明します。r2c358とr3c7はそれぞれがAlmost Locked Setsです。このとき、zは二つのセットのどちらかにしか入れることができません。このzをrestricted commonと呼びます。二つのセットにrestricted commonが存在する場合、他の共通する候補(上記の場合はx)を候補とする全てのマスを見ることができるマスにはxを入れることができません。(上の場合はピンクのマス) 前の章であげた3つのwing系のテクニックは全てALSで説明できます。
上記は片方が単独要素ですが複数要素からなるセットの組み合わせでも考え方は同じです。ALSにはもっと複雑な組み合わせもあるのですが、説明は割愛します。
Simple Chainでは二つのマスのどちらかにxがはいるという関係の一続きの連鎖を利用しました。Multi Coloringでも同じタイプの連鎖を使用しますが、連鎖は一つではなく複数になります。
最も単純なMulti Coloring のパターンです。 左図は6が入る可能性がある場所を示しています。黄色のペア、水色のペアはともに横列内にペアしか6をいれる場所がないので、連鎖になっていますが、要素は2マスづつしかありません。
ペアの左側の要素が同じユニット(列、ボックス)に位置しているのが重要です。この2つのマス(濃い黄色と水色)にはいる数字の組み合わせを考えると、6/0, 0/0, 0/6 の3通りです。(0は6以外の数字) 6/6という組み合わせはありません。このとき反対側の二マス(色の薄い方)は0/6, 6/6, 6/0となり必ず、どちらか一方は6になります。したがって薄い色2マスの共通のピアにあるマス、薄い色2マス両方をみることができるマスには6は入りません。(上図のピンク色) 上の例ではチェーンが最も短いケースで説明しまいしたが、実際は何連鎖していてもかまいません。これはtype 2のMulti Coloringと呼ばれ一般的に記述すると次のようなものになります。
ある数字xにA, B二つの独立した二択チェーンがあり、あるA+のマスとB+のマスが同じユニット内に存在したとき、A-とB-を両方見ることができるマスにはxを入れることはできない。
Type 1のMulti Coloringはもう少し単純です。 左図には2のチェーンが二組示してあります。(青と緑、ピンクとオレンジ)
ここでピンクに注目すると、c6列とr6列で青および緑と同じユニットに位置しています。青または緑のどちらかが真ですから、ピンクは偽となります。
一般的な記述にすると、
ある数字xにA, B二つの独立した二択チェーンがあり、A+のマスがB+およびB-と同じユニット内に存在したとき、A+は偽である。
Unique Rectangleはこれまで説明したテクニックとは全くことなる原理に基づいています。ナンプレも含め、パズルの多くの解法テクニックでは、解こうとしているパズルには有効な解があるという前提をベースにしています。Unique Rectangleはこの一般的前提とは少し異なる前提をベースにしたテクニックです。ルールのところで触れましたが、ナンプレの暗黙のルールに正解は一つしか存在しないというものがあります。Unique Rectangleはこのもう一つのルールを前提としたテクニックです。
Non Unique Rectangleとは左の様な4マスの配置をいいます。4マスは全てxyの二択で、二つのボックスの中に、二つの縦列と二つの横列に配置されてなくてはなりません。 このような配置になった時、4つのマスの組み合わせがxyxyでもyxyxでもどちらでもパズルとして成立します。ある一つのマスがxからyに変わった時に影響を受けるマスを考えてみると分かり安いかもしれません。この4つのマスはお互いにしか影響を与えず外に対しては完全に閉じています。
Non Unique Rectangle配列になったとき、そのナンプレは少なくとも2つの正解を持ってしまいます。Non Unique Rectangle配列にするようなマスのうめ方はできないというのがこのテクニックの基本原理です。
Type 1 Unique Rectangleのテクニックは大きく4つにわけられています。Type 1は最も単純なケースです。左図の様な配置になったとき、水色のマスはzに決定します。xもしくはyを入れた場合、4つのマスの値は全て確定し、しかもパズルが全て解けた後で、xとyを入れ替えてもなんら問題が起きないからです。
Type 2 Type2は左の様な配列です。このとき、水色のマスにzをいれることは出来ません。
Type 3 少し複雑になります。左の様な配列の場合、水色のマスにw/zを入れることはできません。
Type 4 少し難しいです。左図のような配置で水色のマスのどこにもxをいれることができない場合、上の二つのマスはどちらもyの値をとることができません。なぜなら、このようなケースではどちらかは必ずxをとらざるを得ないからです。
このテクニックがつかえるのは唯一解があるナンプレだけです。この技術は複数解の中から正しい答えを選びだす手法ではなく、もとから一つしかない答えに近づく手法なので、複数解をもつパズルに適用することはできません。
Unique Rectangleの手法がナンプレの解法として許されるか許されないかについては議論があります。ミシチャン個人としては、人間が作った日本製の問題にはできるだけ使わない、でもどうしようもなくなったら使う、ソフトで作った問題や海外のサイトの問題には遠慮なしに使うという感じです。(難しいのはType 1のURはあまりにも目立つという事です。探すつもりがなくても目に止まります。) URをわかっている人が作った問題でURを使うのは全く問題ないのですが、知らないかもしれない人の問題に使ってしまうと何となく後ろめたさが残ったりします。
URを使わないと人間には理詰めで解くことが不可能に近いような問題もあるので難しい問題です。
ちなみに、早解きとかのコンテストの場合は絶対に使うべきです。一部のURはナンプレの中では最も見つけやすい配置の一つです。
2006/9/2