超動くマンカラ番外編:カラハ一人勝ち問題(7)~お手玉ンカラ「Seethaipandi」を拡張する(前篇)。
前回の超動くマンカラはこちら。
今回は、番外編。
前回の「Seethaipandi(シータイパンディ)」につながります。
「シータイパンディ」は、盤面14個の穴に、7、6、5、……、2、1と、7から1ずつ少なくなって1で終わる「減少自然数数列」の2組になるように、石を配置(下の図)しました。
で、気になりました。
これって、数列の長さを変えたり、数列の組を増やしたりしても、ちゃんとお手玉ンカラになっているかもしれない、と。
「シータイパンディ」を一般拡張できるのではないか、と。
今回は、現時点でいろいろ実験してみたことを、書いていきます。
「シータイパンディ」の一般拡張を、仮に
「Seethai'p'pandi(シータいっぱんディ)」
と呼ばせていただきます。
レピュニットをシータイパンディしてみる
レピュニット。
聞き慣れない言葉ですが、要は「1がずっと並んだ数」になります。
英語で綴ると「Repunit」。
繰り返し(Repear)の単位(Unit)を短縮した言葉です。
「シータいっぱんディ」でのレピュニットは「n個穴のある盤面で、1つの穴に石を1個配置する(nは自然数)」になります。
とまあ、こんな定義を書いても、さっぱりわかりません、かも知れないので、実際に状況を用意してみます。
◆穴1個のレピュニット:
1
盤面は穴1個なので、石1個配置します。
手番でただ1個の穴からただ1個の石を取って手持ちとし、マンカラの動きに従い、その隣の穴、つまり、ただ1個の穴に手持ちとしたただ1個の石を入れます。
盤面は最初の状態になっているので、目的を達成してゲーム修了です。
かかった手数は1手です。
◆穴2個のレピュニット:
0手目:11
1手目:02
2個の場合です。
0手目は、最初の状態です。
石を取る穴を太字にしてあります。
マンカラを行い、石を動かします。
「シータいっぱんディ」では、次の手番で石を動かす穴は、前の手番で最後に石を置いた穴の隣の穴になります。
2手目で石を動かす穴は、石のない穴になります。
つまり、穴2個のレピュニットは、目的を達成できません。
◆穴3個のレピュニット:
0手目:111
1手目:021
2手目:120
3手目:111
3個の場合です。
こちらは、3手目で盤面の配置は最初(0手目)と同じ配置になりました。
では解答は3手……かというと、ちょっと待ってください。
石を取る位置が異なります。
1つ先にズレています。
もう少し続けてみると、
3手目:111
……………
6手目:111
……………
9手目:111
9手目で、石を動かす穴も最初の状態になります。
なので、9手となります。
◆穴4個以上のレピュニット:
結論から書くと、4個以上はできません。
4個の場合だと、2手目で、
0202
となってしまいます。
実は、盤面が偶数(2m、mは2以上の自然数)個の穴だと、m手目に
0202………………0202
となってしまうのです。
5個の場合は、
0手目:11111
1手目:02111
2手目:02021
3手目:12020
4手目:10130
で、目的が達成できません。
実は、残りの盤面が奇数(2m+1、mは2以上の自然数)個の穴だと、(m+2)手目に
1013020………02020
となってしまうのです。
つまり、レピュニットの場合は、盤面の穴の数が、1個もしくは3個だと、お手玉ンカラができます。
数列1組をシータイパンディしてみる
もう1つシンプルなものを考えてみます。
数列が1組だけの場合です。
オリジナルの「シータイパンディ」から変化させると、
0手目:7654321
上のような盤面と石の配置になります。
実際に動かしてみると、
1手目:1765432
2手目:2176543
3手目:3217654
4手目:4321765
5手目:5432176
6手目:6543217
7手目:7654321
と、穴1個分石を動かす方向に数列がズレていきます。
穴の数と手数が同じ数で、目的が達成します。
実は、穴n(nは自然数)個の盤面で、
0手目:n…………321
1手目:1n…………32
…………
nー1手目:…………21n
n手目:n…………321
と、n手かかって元の状態に戻ります。
数列2組をシータイパンディしてみる
7から1までの2組の数列だと「シータパンディ」と同じ盤面になります。
それ以外、nから1までの2組の数列の配置を考えてみます。
まず、オリジナルの「シータイパンディ」はどうだったかというと、
0手目:76543217654321
1手目:07654328754321
2手目:17654328065432
3手目:10765439165432
4手目:21765439106543
5手目:210765410216543
6手目:321765410210654
7手目:321076511321654
8手目:432176511321065
9手目:432107612432165
10手目:543217612432106
11手目:543210713543216
12手目:654321713543210
13手目:654321014654321
14手目:065432114654321
15手目:17654321765432
となって、15手目で最初の盤面の配置から穴1つ分ずれる状態に並びます。
この15手を1サイクルと数えると、7サイクル目、つまり、105手目で最初の状態に戻ります。
では、ほかの場合も試してみます。
5から1の数列2組だと、
0手目:5432154321
1手目:0543264321
2手目:1543260432
3手目:1054371432
4手目:2154371043
5手目:2105482143
6手目:3215482104
7手目:3210593214
8手目:4321593210
9手目:43210104321
10手目:04321104321
11手目:1543215432
11手で1サイクル。
5サイクルで元の配置となるので55手かかります。
ところで、「7から1の2組の1サイクルの手順」と「5から1の2組の1サイクルの手順」をみると、非常に似通っています。
実は、「n(nは2以上の自然数)から1の2組の1サイクル」は、ほぼこの形式で推移しています。
そこから、手数も推測できます。
です。
ちょっと余談になります。
n(2n+1)。
この数ですが、nをちょっと変えてみます。
ここでのnは数列の長さですが、穴の数lでみてみます。
穴の数lは数列2組分なので、l=2nですので、n=l/2(lの半分)です。
代入すると、
n(2n+1)=(l/2)(l+1)=l(l+1)/2
です。
これをみて、ピンときた方、いるでしょう。
l=10の場合を図示すると、
三角数です。
お待たせしました。
話を戻します。
「n(nは2以上の自然数)から1の2組の盤面」はn(2n+1)手で元の状態に戻る、と推測しました。
n=5だと、
11手目:1543215432
22手目:2154321543
33手目:3215432154
44手目:4321543215
55手目:5432154321
なので、たしかに5×(2×5+2)=5×11=55です。
実は、ちょっと仕組んでおりまして、偶数の場合の例を出していませんでした。
最小の2の場合をやってみます。
0手目:2121
1手目:0231
2手目:1230
3手目:1041
4手目:0141
5手目:1212
たしかに、1サイクルは2×1+1=5手です。
推測だと、2サイクルで最初の状態に戻る、はずですが、
6手目:2310
7手目:2301
8手目:0411
9手目:1410
10手目:1212
なんと、手番の石を動かす穴の位置が最初の状態と異なります。
実は、1サイクルで穴1個分ずれるのではなく、穴(n+1)個分ずれます。
さらにいえば、数列が偶数の場合、奇数の場合からさらに2倍の手数をかけないと手番の石を動かす穴の位置が最初の状態に戻りません。
つまり、「n(nは2以上の自然数)から1の2組の盤面」は
n(2n+1)手:nが3以上の奇数
2n(2n+1)手:nが2以上の偶数
動かすと、完全に最初の状態に到達します。
いったんの締め
ということで、「シータイいっぱんディ」の手数を考えてみました。
前篇としていますが、まだやっていない範囲があります。
数列が3組以上の場合、です。
実際、いくつか手作業でやってみました。
まあ、プログラムやスクリプト組めよ、って話がありますが、手作業のほうが色々と気づくことがあるので、ちまちまとやりました。
全て解明したわけではありませんが、いくつかわかったことを次回書いてみます。
では。