MathLabs

第5問

カタツムリのタートルは、2024行2023列のグリッドの最上段の行にいて、最下段の行に到達したいと考えている。しかし、最初と最後の行を除く各行にちょうど1匹ずつ、合計2022匹の隠れたモンスターがいて、どの二匹も同じ列にはいない。タートルは最初の行から最後の行へ到達するために何度も試行を行う。各試行では、最初の行の好きなマスから出発し、その後は上下左右に隣接するマスへの移動を繰り返す(すでに訪れたマスに戻ることも許される)。もしタートルがモンスターのいるマスに到達すると、その試行は終了し、タートルは最初の行に戻されて新しい試行を始める。モンスターは試行の間に動かず、タートルは自分が訪れた各マスにモンスターがいたかどうかを覚えている。最後の行のいずれかのマスに到達すると、その試行は終了しタートルの勝利となる。モンスターの配置によらず、タートルが高々 nn 回の試行で最下段の行に到達できることを保証する戦略が存在するような、最小の整数 nn を求めよ。
ステップ 4/5: M1が端にある場合
ざっくり言うと

最初のモンスターが壁際にある場合、タートルは代わりにその壁から遠ざかる方向へ斜めに進む階段状の経路をたどる。もし二匹目のモンスターがこの階段状の経路を遮ったなら、すでに歩いた安全な部分と、両方のモンスターの既知の列とを組み合わせることで、タートルは次の試行で両方を回避する経路を構築できる。

M1 on the edge  ⟹  staircase, then a third attempt around M2M_1 \text{ on the edge} \implies \text{staircase, then a third attempt around } M_2
詳しい解説

M1=(2,1)M_1=(2,1) と仮定する。右端の場合は鏡映である。2回目の試行では行2の (2,2)(2,2) に入り、(2,3)(2,3) を訪れて (2,2)(2,2) に戻り、(3,2)(3,2) へ下る。各 r=3,…,s−2r=3,\ldots,s-2 では (r,r−1)(r,r-1) から入り、(r,r)(r,r) と (r,r+1)(r,r+1) を訪れ、(r,r)(r,r) に戻って (r+1,r)(r+1,r) へ下る。最後のモンスターの行では (s−1,s−2)(s-1,s-2) に入り、(s−1,s−1)(s-1,s-1) を訪れてからゴールの行へ下る。これが階段経路である。妨害されなければ2回目で勝つ。下向きに (r,r−1)(r,r-1) へ入ったとき初めて M2M_2 に出会ったなら、すでに訪れた肩 (r−1,r)(r-1,r) は安全である。3回目には安全な接頭部をその肩まで再現し、(r,r)(r,r) から行 rr に入り、列1まで西へ進んで列1を下る。水平移動で M2M_2 に出会った場合は、その直前の西側セルが安全なので、そこまでの接頭部を再現し、行 rr で列1まで西へ進んで下る。どちらの場合も、行 rr の他のセルはその行唯一のモンスターが M2M_2 なので安全であり、列1は行2の下では安全である。なぜならそこにはすでに M1M_1 があり、一つの列に二匹のモンスターはないからである。従って3回目の経路は必ずゴールに達する。これで高々3回の完全に指定された戦略が得られた。