◆東京都 Asami さんからの解答。
【問題3】
間を抜いても、実質それらをくっつけた物と変わらないので、端から順に切っていくことを考えて行けばよい。
さらに、1行または1列ずつ減っていくので、
| コインの山積が2山あって、どちらかから1枚ずつ減らしていくことを2人 で交互にやっていき、最後にどちらか一方の山を1枚にしてしまった方が負け |
という問題と同値。
以下2つの山を成分で表示することにして、
(偶,偶)で始まる場合、後手が必勝。
つまり常に(偶,偶)の状態を相手に渡すことが出来るので、後は帰納法(2成分の和に関する)に乗せればいいと思います。
たぶんいいと思うけど……
【問題2】
ということは、(偶,奇)のときは先手必勝??
【問題1】
ということは、(奇,奇)のときは後手必勝??
……逆からやってすみません(^_^;;)
【コメント】
逆に解くのは鋭いですねぇー。
ただし、奇奇のときも、先手必勝です。
問題も少し増やしました。
◆東京都 goya さんからの解答。
【問題1】と【問題2】の解答
m≧n≧2で m、nいずれか一方が奇数なら、先手必勝
奇数辺の中間の1行(または1列)を切り取ると、その行(または1列)を境に左右(または上下)に同じ形の2つの長方形に分割される。
この後は後手の操作をまねる。
例えば後手が左の長方形から1行切り取ったら、先手は右の長方形の同じ位置の1行を切り取る。
この方法では先手の操作後は常に左右(または上下)に同じ形の2つ以上の長方形があることになるので、後手が行/列の切り取りができたら、先手は同じ操作ができる。
一方の長さが1の時
他方の長さ(以下wとする)
w=奇数 先手必勝(中間の1つを切り取ると対称)
w=偶数 wの値により、変わる?
東京都 Asami さんからの解答の【問題3】への疑問
「常に(偶,偶)の状態を相手に渡すことが出来る」と記されていますが間から抜いていって、複数の長方形に分割されていくと、そのうちの1つの長方形が2行×偶数列になることが考えられます。
ここで後手はこの長方形から1行を切り取ると1行×偶数列の長方形となり、この長方形について、先手は紙の縦または横にはさみを入れるには、列方向にしか切り取るとることができないので1行×m列が相手に渡ることになります。
偶偶の場合、必勝法は無いような気がします。
【コメント】
問題1、2はご指摘の方法が正解で、物まね作戦で必勝法が存在します。
問題3については、確かにさらに厳密な証明が必要なようです。
ただし、結論自体は正しく、偶・偶は後手必勝です。
◆東京都 goya さんからの解答。
【問題3】の解答
偶数×偶数では先手必勝、後手必勝どちらもありうる。
(マスの数により、異なる)
[後手必勝の例]
2行×2列
[先手必勝の例]
2行×4列
まず、先手が1行切り取ります。
残りは1行×4列になる。
これに対して、後手が4列の内のいずれか1列(マス)を切り取ると、残りは
a.1×1と1×2の2枚
b.1×3が1枚
のいずれかになります。
次に先手が
aならば1×2の片方のマス
bならば中間のマス
を切り取ると、残りは1×1が2枚なので後手は次の操作ができない。
[一般解もどき]
4行×n(偶数)列が後手必勝(すなわち、偶数回の操作で分割不能とできる)と仮定し、
4行×(n+2)列の問題について考える。
まず、先手が(n+1)列目の1列を切り取る。
4行×n列と4行×1列が残る。
前者(4行×n列)は仮定により、偶数手で分割不能にできる。
後者(4行×1列)は2手で分割不能にできる。
したがって、4行×n列が後手必勝ならば、4行×(n+2)列は先手必勝となる。
n=2,6・・ 後手必勝
n=4,8・・ 先手必勝
◆愛知県 迷子の雄猫 さんからの解答。
1xnの長方形を一手で切り取る事が出来るのであれば、
偶数x偶数は後手必勝です。
先手が切り取ったのが端でも真ん中でも、切り取る前の長方形で、切り取った行・列に平行な中心線を考えます。
その中心線に対して、先手が切り取った行と対称になる行を後手が切り取ると、
中心に偶数x偶数の長方形が一枚、外側に同じ長方形が2枚出来ます。
先手が外側の長方形に手をつけたなら、後手は対応する長方形に同じように手をつける事が出来、先手が真ん中の長方形に対して手をつけたなら、後手は線対称となる位置に手をつける事が出来ます。
よって偶数x偶数は後手必勝です。□□□□□□
■■■■■■ <−−先手がこの行を切り取ったなら
□□□□□□
□□□□□□
−−−中心線−−−
□□□□□□
□□□□□□
@@@@@@ <−−後手はこの行を切り取る
□□□□□□
◆愛知県 YM Ojisan さんからの解答。
【コメント】
この問題は、 東京都 goya さんや 迷子の雄猫さんと同じく私もはさみで切れなければいけないルールと解釈してかなり悩んでいました。
しかし出題者の用意している解答になるには、やはり迷子の雄猫さんの言われるように
1×Nが1手でとれなければなりません。
つまり切れるかどうかではなく、一列または一行とるのがルールでしょう。
その意味でこのゲームは紙きりゲームよりむしろ、碁石を長方形にならべて、縦横一列ずつとる方がルールが明確で、遊びもしやすいでしょう。
なお、間違った解釈の方のルールの方に関して若干調べたことを付け加えます。
最も簡単な初期状態として1×Nから始めたときの、勝敗をPCで完全に
N:31(計算時間我慢の限界)までしらべたところ、
N=4,12,20が後手必勝でした。
次にこのままゆくと28が後手必勝になりそうですが、28は先手必勝で30が後手必勝でした。
途中のパターンをみても、N偶数時の簡単な必勝法はなさそうでした。
【問題4 解答】
【必勝・必敗の判定】
i番目の長方形(以後:島とよぶ)の縦と横の長さをNi,Miとする。
Poo=Σ(Ni*Mi) mod 2
Poe=Σ(Ni+Mi) mod 2
P=(1−Poe)*(1-Poo)
を計算する。
ここでΣは全ての島に関して合計することを表す。
このとき Pが0なら先手必勝、Pが1なら後手必勝である。
Poo は両辺が奇数長の島の数の偶奇性と等価である。
Poe は一方が奇数長で他方が偶数長の島の数の偶奇性と等価である。
P は(Poo,Poe)が何れも偶(0)の時だけ後手必勝を表すための便法である。
【証明】
A.
(Poo,Poe)=(0,0)に対して1手を入れると必ずPooまたはPoeの少なくとも一方は1になる。
なぜなら、
B.
(Poo,Poe)が(1,0)の場合 (0,0)にする手が有る。
なぜなら、
奇数×奇数の島が少なくとも1つあるので、この真中を削除すると、
奇数×奇数が1つ減り、奇数×偶数が2個増える。
ただし一方が1の場合は全部削除してPooだけが1減じることも可能。
即ちPooは0になり、Poeは変化しない。
C.
(Poo,Poe)が(0、1)の場合 (0,0)にする手が有る。
なぜなら、
偶数×奇数の島が少なくとも1つあるので、この右端を削除すると、
偶数×偶数に変化し Poeは0になる。
D.
(Poo,Poe)が(1、1)の場合 (0,0)にする手が有る。
なぜなら、
偶数×奇数の島が少なくとも1つあるので、この下端を削除すると、
奇数×奇数に変化しPoeが1減り、Pooが1増加して(0,0)になる。
なお、1×1以外の奇数×奇数がある場合は奇数×奇数を奇数×偶数に変えることも可能。
以上より 一度(0,0)になると抜け出せなくすることができ、
最後の(0,0)は取れない状態なので必敗である。
一方、その他のケースはすべて、1手で(0,0)にできるので、必勝である。
『Excel97のデータ』です。
コンピュータと対戦できるので、ぜひ試してください。