2022年4月18日月曜日

カードシャッフルで循環節の数列をつきとめる

 循環節は通常は十進展開

従来型

まず突き止めたい枚数の置換数列をだす

それをシャッフルの置換方法とみてならべかえて剰余数列をだす

剰余数列から十進展開の数列に置き換える

このときカレンダー数列をつかった

新方式

分割シャッフルで十進展開の数列を計算する

十進のシャッフルを実行してその動き方を読みとっていくだけ‼

いってみれば直接方式

ただそれをどうやってやるか

それを計算で出したら本末転倒

(でも基本的に数列は全部EXCELでだす)

純粋に「カードシャッフルだけで」十進展開の数列を計算する続き

31のようにp-1が十の倍数になっていればよいとわかる
だがしかし下一桁が1の場合出てきた数列に9をかけてまた下一桁をとる

カレンダー数列のように変換する必要がある

1/7=
7の場合は特殊で3ごとになるので六枚で三進シャッフルか?

#1
(0)(2)(1)
1   3   5
2   4   6

#2
(0)(2)(1)
  5   1   4
  3   6   2

#3
(0)(2)(1)
 4   5   6
1   2   3

#4
(0)(2)(1)
  6   4   2
  5   3   1

#5
(0)(2)(1)
2   6   3
4   1   5

#6
(0)(2)(1)
  3   2   1
  6   5   4

各パイルの1の位置
0-2-0-1-2-1
1-4-2-8-5-7
これが三進展開の数列と十進展開

問題はなぜこれが十進展開と同値なのか

(0)(2)(1)
1   4   7
2   5   8
3   6   9

それぞれの組に入ってるわけだ

だからひとつの手としては対応するカードの裏に小数展開の数字を書いておいて最後にひっくり返して見せればいいか?

0 件のコメント:

コメントを投稿