2024.02.13記
を
という数列に並べ替える操作を「シャッフル」と呼ぶことにする.並べ替えた数列は を初項とし, の次に , の次に が来るようなものになる.また,数列 , をシャッフルしたときに得られる数列において,数 が現れる位置を で表す.
たとえば, のとき, をシャッフルすると となるので,,,,,, である.
(1) 数列 を 回シャッフルしたときに得られる数列を求めよ.
(2) を満たす任意の整数 に対し, は で割り切れることを示せ.
(3) を正の整数とし, のときを考える.数列 を 回シャッフルすると, にもどることを証明せよ.
2021.01.18記
(1) となる.
(2) ()番目の数はシャッフルによって 番目に移動し,
()番目の数はシャッフルによって 番目に移動するので,
となり題意をみたす.
(3) 任意の について, 回シャッフルしたときの 番目の数の位置は
であり,
であるから,
回シャッフルしたときの 番目の数の位置は同じく 番目である.
つまり, 回シャッフルしたとき,最初の並びに戻る.
解答では, 番目にあった数が何処に移動するかに着目したが,
番目にある数がどう変化するか着目すると次のようになる.
〜 を 〜 とし,頭に0をつけて 桁の2進数表示をするとき,
シャッフルの結果は,末尾を取り除き,0,1を反転させて頭につけることと対応する.
(1) 3桁の2進数を末尾を取り除き,0,1を反転させて頭につけることを3回行うと,全ての0,1が反転したことになるので,逆順にならぶ.
(3) 桁の2進数を末尾を取り除き,0,1を反転させて頭につけることを回行うと,全ての0,1が反転したことになるので,逆順にならぶ.
これを2セット繰り返すので,元に戻る.
ということがわかる.
(2) は略
(3) 以下, を法として考える.
数を1ずつ減らして が並んでいたとする.このとき,番目にある数は である.
数 は 番目の数なので,シャッフル後は 番目にあるので をみたす が
があった場所にやってくる.
ここで, が奇数 のとき,,つまり (1引いて2で割る) となる.
また, が偶数 のとき,,つまり(2で割ってを足す)となる.
この操作を2進法で考えると, を 桁の2進数で表現し,末尾を取り除き,0,1を反転させて頭につけることを行っていることになる.
シャッフル2回目で があった場所にやってくる数は
シャッフル1回目で を 桁の2進数で表現し,末尾を取り除き,0,1を反転させて頭につけた数 があった場所にやってきた数だから, を 桁の2進数で表現し,末尾を取り除き,0,1を反転させて頭につけた数であることがわかり,これは
を 桁の2進数で表現し,末尾を取り除き,0,1を反転させて頭につけることを2回繰り返して得られる数
となる.帰納的にシャッフル回目で があった場所にやってくる数は を 桁の2進数で表現し,末尾を取り除き,0,1を反転させて頭につけることを 回繰り返して得られる数であることがわかる.
以上から,シャッフルを 回繰り返すと、 があった場所にやってくる数は を 桁の2進数で表現し,末尾を取り除き,0,1を反転させて頭につけることを 回繰り返して得られる数であることから, を 桁の2進数で表現したものの を全部反転したものとなり,これは であるから,逆順に並ぶことがわかる.よってこれを2回繰り返すと,もとと同じ順序に並ぶことがわかる.
よって(1)の答は逆順に並び,(3)が証明された.