数独のスカイスクレイパーとは? X-Wing の片側がずれた形
スカイスクレイパー(Skyscraper)は、ある数字の候補が 2 マスだけの行が 2 つあり、片端どうしが同じ列にあるとき、もう一方の端の 2 マスのどちらかに必ずその数字が入ることを使う手筋です。2 つの端の両方から見えるマスから、その数字を消せます。
X-Wing の片側が 1 列ずれた形です。2 本の線が、高さの違うビルのように見えることから、この名前があります。行と列を入れ替えても成り立ちます。
例で見る
鬼難易度数独の「鬼」No.498 の途中です。
① 数字を 1 つ決めて、その候補をすべて見る
6 に注目します。盤面の 6 の候補を、すべて見ていきます。
② 候補が 2 つだけの行を 2 本探し、片端が同じ列にあるかを見る
行1 の 6 は R1C1 か R1C6、行7 の 6 は R7C2 か R7C6 にしか入りません。2 本の行の片端(R1C6 と R7C6)は、同じ列6 にあります。もう一方の端(R1C1 と R7C2)は、列が 1 つずれています。
③ ずれた 2 つの端の、両方から見えるマスから消す
R1C1 か R7C2 の少なくとも一方には、6 が入ります(理由は次の節)。R2C2 は R1C1 と同じブロック1・R7C2 と同じ列2、R8C1 は R1C1 と同じ列1・R7C2 と同じブロック7 にあり、どちらも両方の端から見えます(図の矢印)。だから R2C2 と R8C1 からは 6 を消せます。
なぜ消せる?
R1C6 と R7C6 は同じ列にあるので、両方に 6 が入ることはありません。少なくとも片方は 6 ではありません。
R1C6 が 6 でなければ、行1 の 6 は R1C1 に入ります。R7C6 が 6 でなければ、行7 の 6 は R7C2 に入ります。どちらにしても、R1C1 か R7C2 の少なくとも一方は 6 です。
R2C2 は、R1C1 と同じブロック1 にあり、R7C2 と同じ列2 にあります。R8C1 は、R1C1 と同じ列1 にあり、R7C2 と同じブロック7 にあります。どちらも 2 つの端の両方から見えるので、6 は入りません。
見つけるコツ
- X-Wing を探していて、「同じ 2 列にそろっていない。片方が 1 列ずれている」ときが、スカイスクレイパーの出番です。
- ある数字の候補が 2 マスだけの行(列)を 2 本見つけ、片端どうしが同じ列(行)にあるかを見ます。
- 消せるのは、ずれた 2 つの端の両方と同じ行・列・ブロックにあるマスだけです。