バトルシップ手筋集第3部

この稿では上級手筋と呼ぶに値するであろう手筋を紹介していきます。

第1部(初級手筋)はこちら
第2部(中級手筋)はこちらです。
この部は上級とある通り、ここまでの手筋を理解している人向けの内容になります。強烈な理詰め問を解きたい、作りたいという人向けです。

上級手筋


余裕のある20マス手筋

中級編の20マス手筋はヒントをうまく足してちょうど20になれば、という話でしたが、20に僅かに及ばない状態ならばそれはヒントがない列にあまり無駄に艦を置けないことになるので制約となる可能性があります。

例1:確定している艦影が13マス、C2にあと1マス、C7にあと4マス入ります。ここまでで合計18ですから赤マスの外には2マスしか入れません。
どこかに4マス艦を配置しなければなりませんが、赤マス以外のマスには2マスしかかかれないことを考えると可能性はC7かC8しかありません(C8の艦を2つ伸ばすのは赤マス外に2マス増えるだけなので数の上ではギリギリセーフ)。R8に配置するとR7のヒント数字を達成できなくなるのでR7に入れることになります。
これは他のパズルでも上級手筋としてよく見られるペナルティ理論の考え方といえます。数値的に多少余裕がある状態に見えても、どう置いても無駄が発生してしまう箇所があるならそれ以外の部分は理想的な消費が行われていなければならない…という形ですね。

補足・領域内最大

これも他の手筋のために補助的に使われる考え方です。主に斜め2マスペアの考え方を利用し、特定の領域内に入る艦のマス数を評価することで20マス手筋などに生かすことが考えられます。

例1:R4~7およびC4~7の計8列にあるヒントの合計は26です。交差しているマスは波のマスを除いても12もあるので20マス手筋は使えないように見えますが、これらのマスは色を付けたように2マスペア6組に分けられるので、これらのマスには合わせて6マスしか入ることができません。したがって20マスの限界いっぱいで、ヒント数字に関わらないマス全てに×が付きます。

10隻手筋

標準的なセットにおいて艦は合計10隻です。したがって同一の艦に属しえない艦影が10か所に発生したら、それ以上無関係な場所に艦は発生しないことになりますし、見た目11か所に艦影が発生していたら、少なくともどれかはくっついて1つの艦となることになります。

例1:盤面内に既に9か所の艦影が見えており、R9にもう1隻入るのが確定しているのでこれで10隻です。どの2つも同一の艦とはならないので、既にある艦影から手が届かないマスには×が付きます。また、R9は1隻の追加のみで計3マスを達成しなければならないのでR9の2マス艦が確定します。
なおここからC7の艦の入り方と2マス艦の品切れに着目するとこの盤面は最後まで埋まります。

理論上は理解しやすく、上級手筋と呼ぶには易しいように感じられる手筋ですが、この手筋を上級に分類したのはその見つけにくさゆえです。

例2:中盤まで進んだ盤面です。この盤面では既に5隻の艦が配置されています。赤色の列はいずれもヒント数字の達成まであと艦影2マスですが、2マス艦が品切れのためそれぞれの列に2隻ずつ要求されることになります。それらはR8C9以外で共有されることはないので赤色の列には少なくとも5隻の艦が関わることが分かります。したがって、赤色の列に関与しえないマス全てに×が付き、R8C9には艦影が入ります。ヒント数字から、この艦影は1マス艦ですね。
…なんてことに、ノーヒントで気付くのは結構難しいです。実際の問題では他にもヒント数字がたくさん入っていてどの列に注目すれば良いかも見えにくいことが多いですから、艦が既に多く入っているから10隻手筋なのではないかと感づいても、注目する列を間違えて不発に終わることもあるでしょう。

序中盤ではかなり使いにくくある程度艦の配置が見えてきた終盤で主に使われる手筋なのですが、波を駆使すれば序盤から使える形にすることも不可能ではありません。それが次の例になります。

例3:R2、R9、C2、C9のうち異なる列に入る艦は同一の艦になりえません。そしてこれらの列は波で細かく分割されているため、多くの艦を要求します。どの列についても、列の真ん中に2マス艦が入ればヒント数字-1隻、入らなければヒント数字と同数の艦が入らなければなりません。これらの列のヒントの総和は13ですから、3隻の2マス艦をフルに駆使してようやく10隻に収まります。そしてそれでもなおギリギリですから、R2、R9、C2、C9のいずれにもかからない艦はないはずで、それらの列から届かないR4C4など4マスに×が付きます。またR4C5の艦影をこれらのいずれかの列にかかるようにする方法は1通りであり、それによってR2に2マス艦を置けなくなった以上2マス艦はR9、C2、C9に配されることになります。


他の多くの手筋が艦を詰め込むときの制約に依拠している中、この手筋は艦が足りない方向の制約なので、艦のセットに対し盤面が広い場合により威力を発揮します。この点で稀有な手筋といえるでしょう。

13ブロック手筋

中級手筋でも2×2に盤面を切り分ける手筋が登場しましたが、それの応用です。
試しに8×8の盤面を2×2のブロックに切り分けてみます。すると、16個のブロックに分けることができます。
ここで、それぞれの艦が最低何ブロックを占めるかを考えると、4マス艦、3マス艦は最低2ブロックを占め、2マス艦、1マス艦は最低1ブロックを占めるため、10隻で最低13ブロックを占めることになります。

したがって、もし盤面が2×2のブロック13個で覆えるなら、その全てのブロックに艦影が入ることになります。それに加え、2マス艦が2ブロックにまたがる配置や4マス艦が3ブロックにまたがる配置が否定されます。

例1:この盤面は2×2のブロック13個に分けることができます。R7C2の艦影が2マス艦だとすると2マス艦が2ブロックにまたがるのでブロックが足りなくなります。4マス艦だとしても同様です。したがってこの艦は3マス艦と確定します。同様にR7C2の艦影も3マス艦のものとなります。

艦の長さの偶奇が決定するという唯一無二の特徴があるため、他の手筋と組み合わせてなんだかよく分からない決まり方をもたらします。

また、この手筋は必ずしも13個の2×2ブロックに分けるとは限りません。
「領域内に一つの艦が3マス以上入らない」「領域内に2隻以上の艦が入らない」を満たす領域の典型例が2×2のブロックであるというだけに過ぎません。例えば1のヒントがついた列は上述の条件2つを満たしますから、1つのブロックとして扱うことができます。

例2:盤面を4つの帯と8つのブロックに分けます。ヒント数字が1の帯は1ブロック分、2の帯は2ブロック分の役割を持ちますから、全体で13ブロックになります。したがってブロックの無駄遣いはできません。
特に、C4とC5をまたぐような配置は必ずブロックを無駄遣いするので、そのような置き方はできないとわかります。
ここでR6の6に着目します。先ほど盤面が左右に大きく分断されましたが、左右どちらかに6マス中の4マスを割り振ると4マス艦が3ブロックにまたがってしまうので左右3マスずつになります。1マス+2マスに分けて配置しようとすると2マス艦が2ブロックにまたがって配置されてしまうので、3マス艦が入るしかありません。左右のそれぞれで、2マスずつ艦影が確定します!
…なんなんだこのよくわからない決まり方は。

 

艦のセットに対して盤面が狭い、詰め込み系の問題に有効となる手筋で、2×2のブロックに分ける都合上一辺偶数の盤面と相性が良いです。
8×8に4マス艦×1、3マス艦×2、2マス艦×3、1マス艦×4を配置する問題や10×10に5マス艦×1、4マス艦×2、3マス艦×3、2マス艦×4、1マス艦×5(このセットの場合22ブロック)を配置する問題で有効となる可能性があります。

格子点カウント

標準的な艦のセットは、下の図にあるように計60個の頂点を占めます。間の接触禁止のルールから、盤面内で複数の艦が1つの同一の頂点を共有することはありません。

したがって、艦のセットに対し盤面が著しく狭い場合、その頂点を無駄遣いするような配置が否定されることがあります。

例:7×7の盤面には元から頂点が64個しかないので結構ギリギリです。もしR5C6の艦影ヒントが縦の艦の一部だとするとその右側にある5つの頂点が使えなくなってしまうので全体で使える頂点が60個を切ってしまいます。したがってこの艦影は横の艦の一部ということがわかります。

例:8×8の盤面なので多少余裕があるように見えますが、R1とC1には1マスしか艦影が入れないので結構ぎゅうぎゅう詰めです。黒丸を打った頂点は自由に使えて計54個。四角を打った頂点は隣り合う頂点を同時に使えないので最大2個しか使えず、白丸を打った頂点はヒント数字から最大でも4個しか使えないので、全部合わせて60個ギリギリです。したがって黒丸を打った頂点はすべてフルに使い切ることになり、R1C8とR3C8には艦影が入ります。また、以降も同様の「角」ができる度に艦影を確定させられることになります。

普通の盤面だと格子点は余りに余っているので、これが使える局面は限られます。13ブロック手筋よりさらに狭い盤面を扱う場合に有効でしょう。8×8にStandard fleet…でもまだ盤面が広すぎで、例で挙げたような7×7盤面や周縁部に小さいヒントがある8×8盤面、あとは波マスで周縁部のマスが削り取られた8×8盤面あたりが使いどころとなるでしょうか。
単に狭いだけだと13ブロック手筋で事が済んでしまうので、上の例1のように一辺奇数で13ブロック手筋が使いにくい場合などにお呼びがかかることになります。

なんか昔SP1さんがこれと2×2ブロック手筋を使ってとんでもない問題を作っていたような記憶があります。

第3部締め

このあたりの手筋を素直に使ったとして、パズスク★4といったところですかね。
この辺になると理詰めがないと思われて気合で引かれる可能性が出てくることは覚悟しましょう。

ここから先は新しい手筋が増えていくというよりは、ここまでの手筋をどう組み合わせるか、という話になってきます。
結局のところ紹介した手筋たちは「材料」に過ぎず、それをどう料理していくかは制作者次第という話になります。これを読み切った皆さんであれば材料の知識は十分かと思いますので、これらを組み合わせてどんな悪いことができるか考えてみてください。

この記事が気に入ったらサポートをしてみませんか?