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

この稿は3部構成の中編にあたるものになります。
第1部(初級手筋編)はこちらです。
バトルシップってそもそもどんなパズルなんだ、という方はこちらを先にお読みください。

中級手筋


艦の品切れ(難しめのもの)

1種の艦が明確に品切れになっている状態は分かりやすいですが、何かしらの仮定を置いた際に一気に使用艦数が増えて矛盾が生じるようなものは見つけるのが難しくなります。

例1:まだ1隻も艦は確定しておらず、品切れを考慮するには早いように思えますが、ここが品切れ論法の使いどころです。もし中央上の艦がR5C5に伸びたらどうなるか考えてみましょう。
R6C6に×が付き、その結果C6の4を達成するために4マス艦を置かなければならなくなります。これで4マス艦が2隻になるので矛盾、結果としてR5C5は×となります。

例2:もしR5C5のヒントの艦を2マスで止めてしまうと、R3は残りの4マスに艦を置かざるをえず、2マス艦が4隻になってしまいます。R5C5の艦は3マス以上伸びることが分かります。このような小さい艦の隻数に着目する手筋はやや見つけにくく、話を聞いて理論的に理解するのは容易でも実際の問題に忍ばされると難関となることがあります。

補足:艦の予約

これはそれ単体で手筋というより、艦の品切れ論法やより難しい論法を使う際に補助的に使われる論理になります。
ある大きさの艦がどこかの領域で使われることが確定しているとき、位置は決まっていなくても消費されたもののように数えることで他の場所の助けになることがあります。

例:C3にある8というヒントはかなり大きく、一辺が10マスなので艦の隙間は2か所しか空けられません。すなわち、高々3隻で8を作ることになります。
その配分方法は、4マス艦が1隻しかないことを加味すると4+3+1、4+2+2、3+3+2のいずれかしかありません。
一方で盤面右側を見ると3マス以上の艦が2隻使われることが決まっています。したがってC3に振り向けられる3マス以上の艦は1隻までです。先に挙げた配分のうちこの条件に合うのは4+2+2しかありません。並び順までは確定しませんが、3通りある並べ方で共通している部分に艦影を入れることができます。
もし右側の予約がなければ4+3+1や3+3+2の可能性を否定できないので、両端のマス(R1C3とR10C3)しか確定しないところでした。

この例のように、場合によっては複数サイズの艦をまとめてカウントすることもあります。

20マス手筋


標準的なセットにおいて艦影は合計20マスです。したがって、いくつかの列の数字ヒントを足して20になったら、ヒントのない列に艦影が入ることはありません。
また、数字ヒントのない列に艦影の存在が確定している場合、20マスからその数分差し引けることも忘れないようにしましょう。

例1:盤面右側の艦影ヒントを見ると右半分に少なくとも5マスの艦影が入ることがわかります。一方左側5列のヒント数字の合計が15なので、これで20マスを使い切ることになります。
したがって、他のマスに艦影を割く余裕はありませんので右側5マスで艦影ヒントに関わらないマスには×がつくことになります。

縦横両方の列について和をとる場合、交差しているマスに入った艦影は両方にカウントされることに注意して数えましょう。

例2:R3、R8、C3、C8のヒント数字の和は24で、20を超えています。縦横両方に数えられるマスは赤色の4マスだけなので、全ての赤色のマスに艦が入り、ヒントに関わらないマスには一切艦が入らない状態でやっと数が合います。したがって赤色の4マスに艦影が入り、ヒントに関わらないマスには×がつきます。

この手筋は上の例のように最序盤に配置することもできますが、中盤以降、よく数えてみたらもう上限いっぱいだった、という形で登場することも多い手筋です。序盤からたくさんの×がつくのは大味だと感じる私のような作者は、最初の盤面からこの手筋を使うような構造にはあまりせず、中盤の山場として忍ばせることが多いでしょう。はい、完全に私の好みです。

例:中盤まで進んだ図と思ってください。確定している艦影が9マスなので残り11マス。赤く塗った5つの列に着目すると足りていないマス数の合計が12で交差しているマスが1個しかないので、もうギリギリです。赤マス以外は×となり、交差点に艦影が入ります。

中盤の山として入れやすい手筋であり、解き手としても大域手筋を見つけた末に一気に盤面が進むので爽快感がある手筋です。慣れてきたら作るときに挿してみましょう。

ブロック手筋


初級手筋で登場した「艦の入るマス同士は斜めに接触しない」という性質から、2×2のブロックには高々2マスしか艦影が入らないことが分かります。
したがって、隣接する2列に大きな数字のヒントがある場合、艦の入り方が分かる場合があります。

例1:色を付けた2列は2×2に収まるブロック4つからなります。この2列のヒント数字は合計8なので、全てのブロックに2マスずつ艦影が入ってようやく数が合います。一番上のブロックは2マスしかないので、この2マスに艦影が入ることが決定します。

実は、この2列の間の配置は完全に決定します。
(何ならR2C4の波はなくてもこの2列の艦の配置は確定します。ああ余剰。)
それが次に紹介する手筋です。

斜め2マスペア

ブロック手筋をさらに細かく見ていきます。ブロック手筋は2×2ブロックの対角のマス同士をペアにして考えれば、単に「斜めに接する2マスに同時に艦影が入ることはない」という事実を2つ組み合わせたものと分かります。

つまり、n個の2×2ブロックに盤面が分割された状態は、2n個の斜め2マスペアに盤面が分割された状態とも見ることができます。

例:先ほどの例の続きです。8組ある斜め2マスペア全てに艦影が入ってやっと合計8が達成できます。したがって、ペアの片側に×がついた場合もう片方のマスには艦影が入ることがわかります。R3C4の×からR4C5に艦影が入ります。そこからR5C4が×となり、同様の論法でR6C5に艦影が入る、と連鎖的に決まっていきます。この調子で艦影を決定していくといつの間にかC5に5マスの艦影が入るのでそれ以外のマスは全部×、という形でこの2列は完全に決定するのでした。

2n in 2×2n

斜め2マスペアの論法を推し進めたものがn in 2×nの手筋です。
これは文章で書くと
「一片の長さが偶数(2nとします)のバトルシップにおいて、隣接する2つの縦列のヒントの和が2nであるとき、この2列に縦向きの艦は高々1隻しかなく、横向きの艦は全てその2列にまたがる」
となります。
実例を見たほうが早いですね。

n=5のパターンです。一辺10の盤面で、隣接する2つの縦列のヒント数字の和が10になっています。
縦に入れる高々1隻の艦を除き他の艦は2列にまたがるので、2つのヒント数字の差である2が縦に入る唯一の艦の長さとなります。したがってこの2列には、2列にまたがる横向きの艦が4隻と、縦向きの2マス艦が1隻入ることになります。可能性の一例を右図に示しています。縦の艦がどこに挟まってくるかまでは確定しません。


さて、制作に際しブロック手筋などを織り込もうとする場合、一つ注意点があります。
それはこの手の手筋は艦影の消費が激しく残りの部分が疎になりがちであるという点です。
一例として、standard fleet in 10×10で初手に2n in 2×2n手筋を持ってきた場合(上で挙げたような例です。)、2列で10マスも艦影が消費されるため残りの8列にたった10マスしか艦影がないことになってしまいます。バトルシップは艦の接触禁止があるからこそ成り立っている部分があるので、艦が著しく疎な部分を面白く仕上げるのは技術が問われます。
後編で紹介する10隻手筋など、疎だからこそ輝く手筋をセットにするか、standard fleet in 8×8など艦の数に対して狭い盤面で使うのが順当でしょう。


実際に解いてみる

では最後に、これらの手筋を組み合わせて、問題を1つ解いてみましょう。

こちらから解けます。難度はパズスクでいうと★3くらいでしょう。

まずヒント艦影の周りに×を置きます。

R3のヒント数字が余裕1マスであることに着目します。初級手筋の「大きい数字」の項で紹介した考え方を適用すると、R3C5とR3C10に艦影、R2C6などの8マスに×が確定します。また、R3C5に艦影が入ったことでR4C4に×が入ります。

もしR7C6のヒントが縦の艦だと、その周囲に入る×のせいでC7の空きマスが足りなくなります。よってこれは横の艦となり、周囲に艦影と×が付きます。

ここまでにつけた×のおかげで大技、20マス手筋が成立するようになります。現在確定している艦影は7マス。ヒント数字から、赤く塗った領域にはあと13マスの艦影が入る(ヒント数字に対する不足分の合計が14で、縦横に重複するマスはR3C7の1マスのみ)ので、それ以外のマスには艦影が入りません。一気に×をつけましょう!駆け巡る脳内物質!

残っている空間で、3マス以上の艦を置けるスペースを探します。R3に1隻、R7に1隻置けますが、まだもう1隻置かなければなりません。ヒント数字まで加味すると3マス以上の艦が入りえるスペースは他には1か所しかありません。R8に3マス艦が置かれます。
あとはC1、C4、R8のヒント数字から適当にやっていれば解けます。

第2部締め

今回紹介した手筋までで解ければパズスクで難度★3くらいでしょう。
もちろん20マス手筋などは着目する列を増やすことで相当見えにくく隠すことができますので、そうして作ったパズルに★3を付けたら難度詐称で怒られた…と言われても私は責任は取りません。
今回例題となった問題も、最大の山場である縦横6列を合算する20マス手筋は相当慣れていないと見えづらいと思いますし、3マス以上の3隻に着目する限定手筋もそう易しいものではありません。(もっとも、この問題であればなんとなくヒント数字が大きめなのでヒント数字のある列に艦を押し込むようにすれば引き頼みでも解けるとは思いますが)
大域手筋は作る側は隠れている場所を知っているので易しく思えますが、見つける側の立場に立つと難しいものです。作り終えた後で見直してそれほど難しいことをしていないように思えても、難度は作者体感+★0.5くらいつけておいたほうがよいでしょう。

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