ご注文は数オリですか?

問題一覧へ戻る

#8
組み合わせ
★★★★☆

以下をみたす格子点 (m,n) 全体からなる盤面がある.|m|2019,|n|2019,|m|+|n|<4038特に |m|=2019 または |n|=2019 なる点を境界点と呼ぶ. また直線 x=±2019 および y=±2019境界線と呼ぶ. 盤面内の 2 点が隣接しているとは, それらの距離がちょうど 1 であることをいう.

AnnaとBobがこの盤面上で駒を使って以下のようなゲームを行う. はじめ駒は点 (0,0) にある. Bobを先攻とし, 両者はそれぞれ以下の操作を交互に行う.

  • Bobは各境界線から高々 2 つの境界点を選び(すなわち全体では高々 8 つ), それらを盤面から消去する.
  • Annaは盤面内の隣接する点に駒を動かすことをちょうど 3 回連続で行う. Bobが既に消去した点には動かせない.

Annaがある境界点に駒を動かした瞬間にAnnaの勝利となり, それまでに境界点がすべて消去されればBobの勝ちである. どちらが勝つか?

兒玉:これ盤面どうなってるんだ?
平山:四隅だけ取れてます
馬杉:角が取れてるのは行く必要ないからか
宿田:実験します、2 のとき、自明でした……
平山2019 にはどうせ意味がなくて、ある程度大きいみたいな
馬杉:わからんよ?ギリギリの評価で mod 3 で分かれるかもしれんやん
渡辺3 でAnna勝てるのか?
馬杉:駒が戻る(ステップを無駄にする)ことに意味はないね
平山3 の時点で勝てなさそう、軸上を先に潰せばあとは適当に
馬杉:そもそもBobの勢力はだんだん増していくしね
平山:というか基本的に軸から近いほうからじわじわ消していくべきっぽい
馬杉:Annaの「作戦」として、壁まで真っすぐ突き進んで、横に走る
兒玉:速度が 3:2 でかなりギリギリ説がある
平石:盤面が大きいほどギリギリ?
平山:いや比の問題だからそれは関係ない
平山:「作戦」をちゃんと再現すべきで
平山:駒が (2018,1) に来た時点で、x=2019 上で y=672 から 673 まで消えている
平山:駒が (2018,2017) にいる時点で、y=2016 から673 まで消えている
馬杉:上を封鎖しておけばギリギリ負けるんじゃない
平山:なんか mod 6 とかの細かいところで勝敗変わってきそうだな
宿田:駒が辺に迫るまで 1/3 くらい消せるから、とりあえず均等に消すことを考えた
馬杉:穴から抜けられない? (※編注:実はこれでも大丈夫でした)
馬杉:Bobの戦略が謎で、危なくなったら移動方向を守るだけで勝てるのかどうか
馬杉:多分これ各辺ごとに分離していいと思う、Bobが4体に分裂しているみたいな
平山:これ「作戦」の防御戦略みたいな感じで良くないか?
平山:Bobはとりあえず最初は 672 から 673 みたいな消し方をして
平山:あとは抜けそうな側を固めれば、「作戦」より悪くなることはないし
馬杉:斜めに来られた場合の保証が微妙じゃない?
平山:でもいずれ隅に行くまでのターン数は同じじゃん
馬杉:明確なBobについての合格基準を与えられると早いと思うけど
平石:駒が中心から横に動いたらそれに応じて調整するみたいなことは
平山:それ出来ればやりたくないなあみたいな、必要なさそうだし
平石:そもそも左右に振ったりした時点で損になるからOKなのか
平山:結局のところ戻ると損ってのが本質な気がする
平山:というか戦略もう記述できてない?最初の 673 ターンは中心から広げていって
平山:そこからは基本的に駒がある小正方形の隅に向かって消していく
平山:ここからは単なる詰めるフェーズだから答案はちゃんと書いてねみたいな
馬杉:Happy end! (※編注:細部は解答を参照のこと)

  • 感覚的には分かっても解答を書くときに丁寧で細かい調整が必要になるタイプ、細部で漏れが発生しないように、きっちり考察して文章に落とし込むことが大事
  • この問題ではAnnaが任意の戦略を取れるから、「適当な戦略を取ってAnnaが勝てるならAnnaが勝つ」という気持ちに沿って適当な戦略を考えようとなって、最も簡単な戦略としては真っ直ぐ壁に走ることで、そうすると k/3 ステップかかるから 2k/3 しか埋まってなくて、なんとかそこから脱出したいよな、みたいな発想で適当な戦略を構成したんだけど、ここまでの思考過程って再現可能そう?(「再現可能」とは, 数オリを一切知らない人間に考え方を伝えて、似たようなことができるようになるか、くらいの意味で考えている)なんかゲーム理論のスキーム(テクニック?)というか思考法というか、こういうの結構数オリ特有に近いものがある気がするので
  • 具体的な数値が登場したらその意味を考えよう、実際には何の意味もないとか、単に「十分大きい」程度の意味しか持たないことも多いが、偶奇を筆頭に意味を持つこともあるので注意
  • とはいえそれらも一般化して考えれば気付けることが多いので、まずは一般に N として考えてみるとよい

Annaが i 回の操作を終えた直後の駒の位置を (xi,yi) とし, Bobの戦略として次のようなものを考える:

  • 1i673 について, i 回目の操作では境界点 (2019,i)(2019,i+1) を消去する.
  • 674 回目の操作では, y6730 の場合は (2019,673)(2019,674) を消去し, y673<0 の場合は (2019,674)(2019,673) を消去する.
  • i675 とする. 整数 l, r を, i1 回目の操作直後に既に消されている境界線 x=2019 上の境界点全体の集合が {(2019,y)lyr} と表されるように定める (このような l,r を定めることができることは操作の仕方から簡単にわかる). i 回目の操作では, yi1>0 ならば (2019,r+1)(2019,r+2) を消去し, yi10 ならば (2019,l1)(2019,l2) を消去する.

他の 3 つの境界線についても同様に行動するとして, 以下Bobがこの戦略をとると必ず勝てることを示す. 特にAnnaが境界線 x=2019 上の境界点に駒を動かすことができないことを示せば十分である.

まず, 1i673 について, |xi|+|yi|3×673=2019 であるから, 673 回目までにAnnaが勝てると仮定すると, 673 回目に (2019,0) に駒を動かしたことになる. しかし, この点はBobの 1 回目の操作で消去しているので矛盾する. したがってAnnaは 673 回目までに勝つことはできない.

次に, 674 回目以降にもAnnaは駒を境界点に動かすことができないことを示す. y6730 の場合について示せば十分である. 2018k2018 として, 674 回目以降にAnnaが駒を (2019,k) に動かせたとして矛盾を導く. 最初 674 回のBobの操作を考えると, 2018k674 または 675k2018 である.

(i) 2018k674 のとき

y673>0 の場合は, そこから (2019,k) に行くまでに y0 の領域の点を 2k 個以上通らなければならないことを考えると, (2019,k) に駒を動かすまでに y0 の領域に動かす操作を 2k3 回以上行う必要がある.

また, xi+yixi+1+yi+1 の偶奇は任意の i について異なることを考えると, x673+y673 は奇数であることが分かるので, y673=0 の場合は x6732017 である. したがってこの場合, 任意の i673 について yi0 であるなら (2019,k) に駒を動かすまでに y0 の点を 2k 個以上通らなければならず, そうでない場合は一度 y>0 の領域に動くことになるので, y673>0 の場合と同様に y0 の点を 2k 個以上通ることになる. よってどちらの場合でも y0 の領域に動かす操作を 2k3 回以上行う必要があることになる.

以上より, Annaが 674 回目の操作をしてから (2019,k) に駒を動かすまでにBobは y<0 側の境界点を 2(2k31) 個以上消去することになる. しかし簡単な計算によって k2018 について 6732(2k31)k が分かり, これはAnnaが (2019,k) に駒を動かす前に既にBobがその点を消去していることを意味するので, 矛盾する. 以上より, Annaは 2018k674 を満たす境界点 (2019,k) に駒を動かすことができない.

(ii) 675k2018 のとき

まず, 673 以上の i であって yi0 を満たすものが存在するときを考える. このとき, y0 の領域から (2019,k) に到達するために y>0 を満たす点を k+1 個以上通らなければならないことを考えると, y>0 の領域に駒を動かす操作を k+13 回以上行う必要がある. これは k3 以上である.

次に, 任意の i673 について yi>0 のときを考える. このとき, (x673,y673) から (2019,k) まで |2019x673|+|ky673| 回以上動く必要がある. さらに, x673+y6733×673=2019 であることを考えると, 駒を (x673,y673) から (2019,k) まで動かす間に |2019x673|+|ky673|32019+k(x673+y673)3k3 回以上駒を動かすことになる.

以上より, Annaが 674 回目の操作をしてから (2019,k) に駒を動かすまでにBobは y>0 側の境界点を 2(k31) 個以上消去することになる. しかし簡単な計算によって k2018 について 674+2(k31)k が分かり, これはAnnaが (2019,k) に駒を動かす前に既にBobがその点を消去していることを意味するので, 矛盾する. 以上より, Annaは 675k2018 を満たす境界点 (2019,k) に駒を動かすことができない.

以上の考察から, Bobが上述の戦略を取ればAnnaは決して勝てないことが分かり, Bobの必勝が示された.

参考 解いてみたでも述べた通り, Bobはまず 1/3 ずつ均等に消していき, それからはAnnaと最近のものを逐次消す戦略でも勝つことができる. いずれも素朴ではあるが, 上の固めて消す戦略の方が解答は作成しやすいのではないかと思う.