その他のテクニック

1. Gurths対称配置

初期配置からいきなり一マス確定してしまうテクニックです。

ナンプレの初期配置が数字も含めた点対称になっているとします。(数字も含めた対称とは、ある数字xの点対称の位置には必ず数字yがおかれているという対称状態を指します。)その時、r5c5(ど真ん中のマス)には初期配置に8種類しか数字がない場合使われていない数字が、全ての数字が使われている場合は対称位置に同じ数字が使われている数字が必ず入ります。(例でいうと一番上は8, 真ん中は7, 一番下は5がど真ん中のマスに入ります)

数字も含めた点対称配置のナンプレは答えも数字も含めた点対称になります。(理由: 数字も含めた点対称配置において、あるマスの数字が確定するとき、必ずその点対称位置のマスも数字が確定します。なおかつこの二つの数字は必ず対称ペアです。)

この配置には4つの数字の対称ペアと1つの単独数字が存在します。答えの配置から4つの数字の対称ペア全てを取り除くと、単独数字が残りますが、このとき必ずr5c5も残ります。なぜなら、ど真ん中のマスだけはペアとなるマスが存在しないので、4つの数字の対称ペアが入ることはあり得ないからです。

PS.

ミシチャンの説明の仕方が悪い様なのでもう少し具体的に説明してみます。

これは上のリンク先にある1番目の例です。

初期配置が点対称になっているのは一瞥してわかりますが、もう一つ特徴があります。

1が入っているマスの点対称の位置には必ず6が入っています。(その逆も成立)

同様に2の点対称の位置には4が、3の点対称の位置には5が、7の点対称の一には9が必ず入っています。

8のマスだけは点対称の位置に同じ8が入っています。

この問題を解いてみます。

まず1に注目するとbox 8には青のマスしか1が入れられないことがわかります。

この後、普通のナンプレならさらに1を入れられるマスを探すのですが、Girth対象配置のナンプレではその前に自動的に決まるマスがあります。

それはピンクのマスです。このマスには1の対称ペアである6が必ず入ります。

Girth対称配置では対称ペアがどのような段階でも必ず維持されます。あるマスが確定したら、その点対称の位置のマスも同時に決まります。

あるマスを決める手がかりになった配置の点対称の位置には、全く同じように対称ペアを確定するための数字が配置されているからです。

9x9のナンプレでは1つだけ特殊なマスがあります。中心のマスです。

このマスだけは点対称の位置が自分自身に重なります。例えばこのマスにもし7が入るとしたら、上記の理屈からいうとその対象ペアである9も入らなくてはならないはずです。しかし、同じマスに二つの数字が入ることはありえません。

従って、このマスに入りうる数字は対称ペアがそれ自身である8しかないということがわかります。


2.1. Finned Fish

X-wing系の変形です。左図の様にxがはいる可能性のあるマスが配置されていたとします。(グレーのマスにはxが入らない)水色のマスにxが入らないなら、黄色のマス4つでX-wingが成立します。(この水色をFinと呼びます) Finのおかげでうまく行きません。

けれどもX-wingが成立しないからといって諦める必要はありません。この配置でもちょっとだけxを削れるマスが存在します。ピンクのマスです。ここにxをいれることはできません。

これは、Multi-ColoringにGroupの考え方を応用すると理解しやすいです。(真ん中のボックスのxがある二マスを一マスとして考えると、r3c5, r5c56の3つのマス全てを見る事ができるマスにはxを入れることができない)

したがって左図の下にある様に、X-wingの形を取っていなくても成り立ちます。(黄色のマスにはxを入れられない)

Sword Fish以上でも同じことは言えますが、見つける手間の割に得るものが少ないので、意識して探すのは非効率です。(あんまり関係ないんですが、X-wing, Sword-Fish,....ときてN=6の時はWhale, N=7の時はLeviathanと言うそうです。)

PS. (2006/10)

純正のX-wing系配列では4行4列を超えるものはn国同盟同様、残りのマスの配置で4行4列以下のものが成立しているので解法としての意味はあまり持ちません。

けれどもFin付きの場合は、必ずしも残りのマスでX-wing系配列が成立するとは限らないため、Finned WhaleとかFinned Leviathanというとてつもないのができたりします。


2.2 Sashimi Fish

上の二番目の例の様に本来のX-wingの場所にXがないパターンをSashimi (Finned) Fishと呼ぶそうです。左図もその一例です。(グレーのマスにXがはいらない時、ピンクのマスにはXをいれることができない)

こちらもSwordfish以上の配列でも成り立ちます。


2.3 Headless Fish

3x3のSwordfish以上の配列ではSashimi Fishの様に1ヶ所Xが欠けているだけではなく、Fishy Arrangementを構成する1列丸ごとXが欠けているHeadless (Finned) Fishという配置もあります。(もう何が何やら、、、)

グレーのマスにXがはいらないとき、9個の黄色のマスでSwordfish、水色の4つのマスがFinと理解することが可能です。この結果ピンクのマスにはXを入れる事ができないとわかります。(注: Swordfishを形成するC1列のマスはどれもXを候補に持たなくてもよい)

同じ配列をFinが二つついたSwordfishと理解すると違うマスにXがはいらないこともわかります。


3. ナンプレ解法の裏にある一つの共通した考え方

ここで説明するのはナンプレの解法そのものではなく、Single Candidate(ここに入るのはこの数字だけ), Single Position(この数字が入るのはここだけ), n国同盟, X-wing, Swordfish等の解法はたった一つの原則から導き出されるというちょっと驚きの考え方です。

その原則とは、「ある候補kがAのエリア内でAとBの共通部にしか存在しない場合、Bのエリア内でもAとBの共通部にしか存在できない」というものです。

もしBエリアの共通部分以外にkが存在したとすると、AB共通エリアにも必ずkが存在しなくてはならないため(そうしないとAにkが存在しなくなる)、Bエリア内に2つのkが存在することになってしまいます。したがってBエリア内でも共通部分にしかkは存在することができません。

kがn個の複数の場合(k_n)は、AかBのどちらか一方または両方がn個として扱います。

この考え方がナンプレの基本的な解法全てに展開される様子はこの投稿で説明されています。いろいろな解法が見事に統一されていて、初めて読んだ時は感動してしまいました。
この記事を読むと、X-wingと2国同盟が全く同じアルゴリズムで解けるというのもなんか妙に納得してしまいます。


4. ナンプレ解法の裏にある一つの共通した考え方 その2

上で説明した考え方の基本はLocked Setです。代表的な表現はn個のマスにn個の候補しか入らない場合、それらのマス以外にはそれらの候補は入らないという考え方です。この考え方で、X-wing系の解法までは統一して説明出来ます。

その先に共通する考え方がAlmost Locked Sets(+1)です。n+1個の候補を持つn個のマスの組み合わせ2個とどちらかの組一方にしか入れる事ができないRestricted Commonを利用する手法です。この考え方はチェーン系のテクニックの背後に隠れているといえます。

例えばXY-wingの場合、左図の様に考えて、Almost Locked Setsを適用すると水色のマスにはzを入れる事が出来ないとわかります。

Almost Locked Setsの応用がそうだったように、このチェーンはどんどん伸ばす事が可能です。

単純なX-cycleの場合、左図の様に考えます。(グレーのマスにはxは入らない)

候補の代りに行と列のマスを、Restricted Commonにはボックスを適用します。

すると水色のマスにはxを入れることが出来ないとわかります。

こちらも上記と同様伸ばしていくことが出来ます。

(これらはAlmost Locked SetsというよりAlmost Locked Cellsと呼んだ方が正しいかもしれません)

Fin系やSashimi系の場合は左図の様に考えます。
こうして考えると、ナンプレの解法をもう少し拡張できる事がわかります。

Almost Locked Sets(+1)はn+1/nと1つのRestricted Commonを使う解法なので、同様に2個のRestricted Commonがあれば、Almost Locked Sets(+2)というテクニックを使う事ができます。

例えば左図のようにグレーのマスにxが入らない時、水色のマスにはxを入れる事が出来ません。

Almost Locked Cells(+3)のパターンは今の所、思いつく事が出来ません。(9x9のナンプレだと不可能?)

注意: 本項目はオリジナルな考え方なので、致命的な欠陥が含まれている可能性があります。(2006/12/13)


→home →next


2006/11/

inserted by FC2 system