2560

2手目から4手目までのツモパターンとぷよぷよ数学理論、ツモパターンの求め方

by
田中夕張
田中夕張
ぷよぷよのツモパターンを考えてみました。自分の脳みそでツモパターンを考えるのは面倒くさいのでツモパターンを見つけるアルゴリズムを考え、コンピューターに計算させました。このアルゴリズムが正しいものであることを保証するために、新しい数学の概念を作りました。

ツモパターンとは何かというと
1.AB、BAは同じとみなす(軸の位置は考えない)
2.AABB、BBCCは同じとみなす

の前提条件の下のツモを指します。

この投稿の下の方にツモパターンを実際に羅列していますが、ちょっとした都合でABCDではなく、0123で記入しています。
また例えば[[00],[11]]はAA BBを表しています。

ツモパターンを羅列する前に、理論について簡単に説明します。
数学の写像を用いて「ツモが実質的に同じものである」というものは何かということを定義しました。
そしてツモAとツモBが実質的に同じであるとき、「A~B」と表します。このとき「~」が同値関係となることを証明し、その同値関係から作れる商集合を考えます。この商集合の濃度がツモパターンの数になり、要素としてツモパターンを持つものになります。

これが数学の大雑把な流れです。こちらで数学の説明を詳しくするのはあまりにも大変なので、私のnoteに数学的に考えたぷよぷよのツモパターンについて載せておきます。

厳密な理論の解説
https://note.com/yubari_apex/n/n3ba0bed98afb

また私はプログラミングについてネットで独学で学んだ程度の人間なので、だれかこの理論をもとにツモパターンを5手目まで求めてほしいな~なんて考えてます。私の書いたコードでは計算時間がかかりすぎてしまい求められません。

また数学に精通している方には、この理論をぜひ発展させて頂きたく思います。私はぷよぷよはほとんどプレイしないので、どんな定理が成り立ちそうかという直観が全く働きません。

もしこの投稿をもとに「新しくツモパターンを求められた」「新しい定理を見つけた」ということがありましたら、是非コメント欄か何かで教えてほしく思います。

追記
コメント欄に先行研究についてのコメントを頂いています。是非ご覧ください。
最初の6手は40067通り(1通りずつすべて画像化しました)
つてつちさんありがとうございます。

2手ツモパターン 全9種類
[[0, 0], [0, 0]],
[[0, 0], [0, 1]],
[[0, 0], [1, 1]],
[[0, 0], [1, 2]],
[[0, 1], [0, 0]],
[[0, 1], [0, 1]],
[[0, 1], [0, 2]],
[[0, 1], [2, 2]],
[[0, 1], [2, 3]]

3手ツモパターン 全59種類
 [[0, 0], [0, 0], [0, 0]],
 [[0, 0], [0, 0], [0, 1]],
 [[0, 0], [0, 0], [1, 1]],
 [[0, 0], [0, 0], [1, 2]],
 [[0, 0], [0, 1], [0, 0]],
 [[0, 0], [0, 1], [0, 1]],
 [[0, 0], [0, 1], [0, 2]],
 [[0, 0], [0, 1], [1, 1]],
 [[0, 0], [0, 1], [1, 2]],
 [[0, 0], [0, 1], [2, 2]],
 [[0, 0], [0, 1], [2, 3]],
 [[0, 0], [1, 1], [0, 0]],
 [[0, 0], [1, 1], [0, 1]],
 [[0, 0], [1, 1], [0, 2]],
 [[0, 0], [1, 1], [1, 1]],
 [[0, 0], [1, 1], [1, 2]],
 [[0, 0], [1, 1], [2, 2]],
 [[0, 0], [1, 1], [2, 3]],
 [[0, 0], [1, 2], [0, 0]],
 [[0, 0], [1, 2], [0, 1]],
 [[0, 0], [1, 2], [0, 3]],
 [[0, 0], [1, 2], [1, 1]],
 [[0, 0], [1, 2], [1, 2]],
 [[0, 0], [1, 2], [1, 3]],
 [[0, 0], [1, 2], [3, 3]],
 [[0, 1], [0, 0], [0, 0]],
 [[0, 1], [0, 0], [0, 1]],
 [[0, 1], [0, 0], [0, 2]],
 [[0, 1], [0, 0], [1, 1]],
 [[0, 1], [0, 0], [1, 2]],
 [[0, 1], [0, 0], [2, 2]],
 [[0, 1], [0, 0], [2, 3]],
 [[0, 1], [0, 1], [0, 0]],
 [[0, 1], [0, 1], [0, 1]],
 [[0, 1], [0, 1], [0, 2]],
 [[0, 1], [0, 1], [2, 2]],
 [[0, 1], [0, 1], [2, 3]],
 [[0, 1], [0, 2], [0, 0]],
 [[0, 1], [0, 2], [0, 1]],
 [[0, 1], [0, 2], [0, 2]],
 [[0, 1], [0, 2], [0, 3]],
 [[0, 1], [0, 2], [1, 1]],
 [[0, 1], [0, 2], [1, 2]],
 [[0, 1], [0, 2], [1, 3]],
 [[0, 1], [0, 2], [2, 2]],
 [[0, 1], [0, 2], [2, 3]],
 [[0, 1], [0, 2], [3, 3]],
 [[0, 1], [2, 2], [0, 0]],
 [[0, 1], [2, 2], [0, 1]],
 [[0, 1], [2, 2], [0, 2]],
 [[0, 1], [2, 2], [0, 3]],
 [[0, 1], [2, 2], [2, 2]],
 [[0, 1], [2, 2], [2, 3]],
 [[0, 1], [2, 2], [3, 3]],
 [[0, 1], [2, 3], [0, 0]],
 [[0, 1], [2, 3], [0, 1]],
 [[0, 1], [2, 3], [0, 2]],
 [[0, 1], [2, 3], [2, 2]],
 [[0, 1], [2, 3], [2, 3]]

4手ツモパターン 全483種類
 [[0, 0], [0, 0], [0, 0], [0, 0]],
 [[0, 0], [0, 0], [0, 0], [0, 1]],
 [[0, 0], [0, 0], [0, 0], [1, 1]],
 [[0, 0], [0, 0], [0, 0], [1, 2]],
 [[0, 0], [0, 0], [0, 1], [0, 0]],
 [[0, 0], [0, 0], [0, 1], [0, 1]],
 [[0, 0], [0, 0], [0, 1], [0, 2]],
 [[0, 0], [0, 0], [0, 1], [1, 1]],
 [[0, 0], [0, 0], [0, 1], [1, 2]],
 [[0, 0], [0, 0], [0, 1], [2, 2]],
 [[0, 0], [0, 0], [0, 1], [2, 3]],
 [[0, 0], [0, 0], [1, 1], [0, 0]],
 [[0, 0], [0, 0], [1, 1], [0, 1]],
 [[0, 0], [0, 0], [1, 1], [0, 2]],
 [[0, 0], [0, 0], [1, 1], [1, 1]],
 [[0, 0], [0, 0], [1, 1], [1, 2]],
 [[0, 0], [0, 0], [1, 1], [2, 2]],
 [[0, 0], [0, 0], [1, 1], [2, 3]],
 [[0, 0], [0, 0], [1, 2], [0, 0]],
 [[0, 0], [0, 0], [1, 2], [0, 1]],
 [[0, 0], [0, 0], [1, 2], [0, 3]],
 [[0, 0], [0, 0], [1, 2], [1, 1]],
 [[0, 0], [0, 0], [1, 2], [1, 2]],
 [[0, 0], [0, 0], [1, 2], [1, 3]],
 [[0, 0], [0, 0], [1, 2], [3, 3]],
 [[0, 0], [0, 1], [0, 0], [0, 0]],
 [[0, 0], [0, 1], [0, 0], [0, 1]],
 [[0, 0], [0, 1], [0, 0], [0, 2]],
 [[0, 0], [0, 1], [0, 0], [1, 1]],
 [[0, 0], [0, 1], [0, 0], [1, 2]],
 [[0, 0], [0, 1], [0, 0], [2, 2]],
 [[0, 0], [0, 1], [0, 0], [2, 3]],
 [[0, 0], [0, 1], [0, 1], [0, 0]],
 [[0, 0], [0, 1], [0, 1], [0, 1]],
 [[0, 0], [0, 1], [0, 1], [0, 2]],
 [[0, 0], [0, 1], [0, 1], [1, 1]],
 [[0, 0], [0, 1], [0, 1], [1, 2]],
 [[0, 0], [0, 1], [0, 1], [2, 2]],
 [[0, 0], [0, 1], [0, 1], [2, 3]],
 [[0, 0], [0, 1], [0, 2], [0, 0]],
 [[0, 0], [0, 1], [0, 2], [0, 1]],
 [[0, 0], [0, 1], [0, 2], [0, 2]],
 [[0, 0], [0, 1], [0, 2], [0, 3]],
 [[0, 0], [0, 1], [0, 2], [1, 1]],
 [[0, 0], [0, 1], [0, 2], [1, 2]],
 [[0, 0], [0, 1], [0, 2], [1, 3]],
 [[0, 0], [0, 1], [0, 2], [2, 2]],
 [[0, 0], [0, 1], [0, 2], [2, 3]],
 [[0, 0], [0, 1], [0, 2], [3, 3]],
 [[0, 0], [0, 1], [1, 1], [0, 0]],
 [[0, 0], [0, 1], [1, 1], [0, 1]],
 [[0, 0], [0, 1], [1, 1], [0, 2]],
 [[0, 0], [0, 1], [1, 1], [1, 1]],
 [[0, 0], [0, 1], [1, 1], [1, 2]],
 [[0, 0], [0, 1], [1, 1], [2, 2]],
 [[0, 0], [0, 1], [1, 1], [2, 3]],
 [[0, 0], [0, 1], [1, 2], [0, 0]],
 [[0, 0], [0, 1], [1, 2], [0, 1]],
 [[0, 0], [0, 1], [1, 2], [0, 2]],
 [[0, 0], [0, 1], [1, 2], [0, 3]],
 [[0, 0], [0, 1], [1, 2], [1, 1]],
 [[0, 0], [0, 1], [1, 2], [1, 2]],
 [[0, 0], [0, 1], [1, 2], [1, 3]],
 [[0, 0], [0, 1], [1, 2], [2, 2]],
 [[0, 0], [0, 1], [1, 2], [2, 3]],
 [[0, 0], [0, 1], [1, 2], [3, 3]],
 [[0, 0], [0, 1], [2, 2], [0, 0]],
 [[0, 0], [0, 1], [2, 2], [0, 1]],
 [[0, 0], [0, 1], [2, 2], [0, 2]],
 [[0, 0], [0, 1], [2, 2], [0, 3]],
 [[0, 0], [0, 1], [2, 2], [1, 1]],
 [[0, 0], [0, 1], [2, 2], [1, 2]],
 [[0, 0], [0, 1], [2, 2], [1, 3]],
 [[0, 0], [0, 1], [2, 2], [2, 2]],
 [[0, 0], [0, 1], [2, 2], [2, 3]],
 [[0, 0], [0, 1], [2, 2], [3, 3]],
 [[0, 0], [0, 1], [2, 3], [0, 0]],
 [[0, 0], [0, 1], [2, 3], [0, 1]],
 [[0, 0], [0, 1], [2, 3], [0, 2]],
 [[0, 0], [0, 1], [2, 3], [1, 1]],
 [[0, 0], [0, 1], [2, 3], [1, 2]],
 [[0, 0], [0, 1], [2, 3], [2, 2]],
 [[0, 0], [0, 1], [2, 3], [2, 3]],
 [[0, 0], [1, 1], [0, 0], [0, 0]],
 [[0, 0], [1, 1], [0, 0], [0, 1]],
 [[0, 0], [1, 1], [0, 0], [0, 2]],
 [[0, 0], [1, 1], [0, 0], [1, 1]],
 [[0, 0], [1, 1], [0, 0], [1, 2]],
 [[0, 0], [1, 1], [0, 0], [2, 2]],
 [[0, 0], [1, 1], [0, 0], [2, 3]],
 [[0, 0], [1, 1], [0, 1], [0, 0]],
 [[0, 0], [1, 1], [0, 1], [0, 1]],
 [[0, 0], [1, 1], [0, 1], [0, 2]],
 [[0, 0], [1, 1], [0, 1], [1, 1]],
 [[0, 0], [1, 1], [0, 1], [1, 2]],
 [[0, 0], [1, 1], [0, 1], [2, 2]],
 [[0, 0], [1, 1], [0, 1], [2, 3]],
 [[0, 0], [1, 1], [0, 2], [0, 0]],
 [[0, 0], [1, 1], [0, 2], [0, 1]],
 [[0, 0], [1, 1], [0, 2], [0, 2]],
 [[0, 0], [1, 1], [0, 2], [0, 3]],
 [[0, 0], [1, 1], [0, 2], [1, 1]],
 [[0, 0], [1, 1], [0, 2], [1, 2]],
 [[0, 0], [1, 1], [0, 2], [1, 3]],
 [[0, 0], [1, 1], [0, 2], [2, 2]],
 [[0, 0], [1, 1], [0, 2], [2, 3]],
 [[0, 0], [1, 1], [0, 2], [3, 3]],
 [[0, 0], [1, 1], [1, 1], [0, 0]],
 [[0, 0], [1, 1], [1, 1], [0, 1]],
 [[0, 0], [1, 1], [1, 1], [0, 2]],
 [[0, 0], [1, 1], [1, 1], [1, 1]],
 [[0, 0], [1, 1], [1, 1], [1, 2]],
 [[0, 0], [1, 1], [1, 1], [2, 2]],
 [[0, 0], [1, 1], [1, 1], [2, 3]],
 [[0, 0], [1, 1], [1, 2], [0, 0]],
 [[0, 0], [1, 1], [1, 2], [0, 1]],
 [[0, 0], [1, 1], [1, 2], [0, 2]],
 [[0, 0], [1, 1], [1, 2], [0, 3]],
 [[0, 0], [1, 1], [1, 2], [1, 1]],
 [[0, 0], [1, 1], [1, 2], [1, 2]],
 [[0, 0], [1, 1], [1, 2], [1, 3]],
 [[0, 0], [1, 1], [1, 2], [2, 2]],
 [[0, 0], [1, 1], [1, 2], [2, 3]],
 [[0, 0], [1, 1], [1, 2], [3, 3]],
 [[0, 0], [1, 1], [2, 2], [0, 0]],
 [[0, 0], [1, 1], [2, 2], [0, 1]],
 [[0, 0], [1, 1], [2, 2], [0, 2]],
 [[0, 0], [1, 1], [2, 2], [0, 3]],
 [[0, 0], [1, 1], [2, 2], [1, 1]],
 [[0, 0], [1, 1], [2, 2], [1, 2]],
 [[0, 0], [1, 1], [2, 2], [1, 3]],
 [[0, 0], [1, 1], [2, 2], [2, 2]],
 [[0, 0], [1, 1], [2, 2], [2, 3]],
 [[0, 0], [1, 1], [2, 2], [3, 3]],
 [[0, 0], [1, 1], [2, 3], [0, 0]],
 [[0, 0], [1, 1], [2, 3], [0, 1]],
 [[0, 0], [1, 1], [2, 3], [0, 2]],
 [[0, 0], [1, 1], [2, 3], [1, 1]],
 [[0, 0], [1, 1], [2, 3], [1, 2]],
 [[0, 0], [1, 1], [2, 3], [2, 2]],
 [[0, 0], [1, 1], [2, 3], [2, 3]],
 [[0, 0], [1, 2], [0, 0], [0, 0]],
 [[0, 0], [1, 2], [0, 0], [0, 1]],
 [[0, 0], [1, 2], [0, 0], [0, 3]],
 [[0, 0], [1, 2], [0, 0], [1, 1]],
 [[0, 0], [1, 2], [0, 0], [1, 2]],
 [[0, 0], [1, 2], [0, 0], [1, 3]],
 [[0, 0], [1, 2], [0, 0], [3, 3]],
 [[0, 0], [1, 2], [0, 1], [0, 0]],
 [[0, 0], [1, 2], [0, 1], [0, 1]],
 [[0, 0], [1, 2], [0, 1], [0, 2]],
 [[0, 0], [1, 2], [0, 1], [0, 3]],
 [[0, 0], [1, 2], [0, 1], [1, 1]],
 [[0, 0], [1, 2], [0, 1], [1, 2]],
 [[0, 0], [1, 2], [0, 1], [1, 3]],
 [[0, 0], [1, 2], [0, 1], [2, 2]],
 [[0, 0], [1, 2], [0, 1], [2, 3]],
 [[0, 0], [1, 2], [0, 1], [3, 3]],
 [[0, 0], [1, 2], [0, 3], [0, 0]],
 [[0, 0], [1, 2], [0, 3], [0, 1]],
 [[0, 0], [1, 2], [0, 3], [0, 3]],
 [[0, 0], [1, 2], [0, 3], [1, 1]],
 [[0, 0], [1, 2], [0, 3], [1, 2]],
 [[0, 0], [1, 2], [0, 3], [1, 3]],
 [[0, 0], [1, 2], [0, 3], [3, 3]],
 [[0, 0], [1, 2], [1, 1], [0, 0]],
 [[0, 0], [1, 2], [1, 1], [0, 1]],
 [[0, 0], [1, 2], [1, 1], [0, 2]],
 [[0, 0], [1, 2], [1, 1], [0, 3]],
 [[0, 0], [1, 2], [1, 1], [1, 1]],
 [[0, 0], [1, 2], [1, 1], [1, 2]],
 [[0, 0], [1, 2], [1, 1], [1, 3]],
 [[0, 0], [1, 2], [1, 1], [2, 2]],
 [[0, 0], [1, 2], [1, 1], [2, 3]],
 [[0, 0], [1, 2], [1, 1], [3, 3]],
 [[0, 0], [1, 2], [1, 2], [0, 0]],
 [[0, 0], [1, 2], [1, 2], [0, 1]],
 [[0, 0], [1, 2], [1, 2], [0, 3]],
 [[0, 0], [1, 2], [1, 2], [1, 1]],
 [[0, 0], [1, 2], [1, 2], [1, 2]],
 [[0, 0], [1, 2], [1, 2], [1, 3]],
 [[0, 0], [1, 2], [1, 2], [3, 3]],
 [[0, 0], [1, 2], [1, 3], [0, 0]],
 [[0, 0], [1, 2], [1, 3], [0, 1]],
 [[0, 0], [1, 2], [1, 3], [0, 2]],
 [[0, 0], [1, 2], [1, 3], [0, 3]],
 [[0, 0], [1, 2], [1, 3], [1, 1]],
 [[0, 0], [1, 2], [1, 3], [1, 2]],
 [[0, 0], [1, 2], [1, 3], [1, 3]],
 [[0, 0], [1, 2], [1, 3], [2, 2]],
 [[0, 0], [1, 2], [1, 3], [2, 3]],
 [[0, 0], [1, 2], [1, 3], [3, 3]],
 [[0, 0], [1, 2], [3, 3], [0, 0]],
 [[0, 0], [1, 2], [3, 3], [0, 1]],
 [[0, 0], [1, 2], [3, 3], [0, 3]],
 [[0, 0], [1, 2], [3, 3], [1, 1]],
 [[0, 0], [1, 2], [3, 3], [1, 2]],
 [[0, 0], [1, 2], [3, 3], [1, 3]],
 [[0, 0], [1, 2], [3, 3], [3, 3]],
 [[0, 1], [0, 0], [0, 0], [0, 0]],
 [[0, 1], [0, 0], [0, 0], [0, 1]],
 [[0, 1], [0, 0], [0, 0], [0, 2]],
 [[0, 1], [0, 0], [0, 0], [1, 1]],
 [[0, 1], [0, 0], [0, 0], [1, 2]],
 [[0, 1], [0, 0], [0, 0], [2, 2]],
 [[0, 1], [0, 0], [0, 0], [2, 3]],
 [[0, 1], [0, 0], [0, 1], [0, 0]],
 [[0, 1], [0, 0], [0, 1], [0, 1]],
 [[0, 1], [0, 0], [0, 1], [0, 2]],
 [[0, 1], [0, 0], [0, 1], [1, 1]],
 [[0, 1], [0, 0], [0, 1], [1, 2]],
 [[0, 1], [0, 0], [0, 1], [2, 2]],
 [[0, 1], [0, 0], [0, 1], [2, 3]],
 [[0, 1], [0, 0], [0, 2], [0, 0]],
 [[0, 1], [0, 0], [0, 2], [0, 1]],
 [[0, 1], [0, 0], [0, 2], [0, 2]],
 [[0, 1], [0, 0], [0, 2], [0, 3]],
 [[0, 1], [0, 0], [0, 2], [1, 1]],
 [[0, 1], [0, 0], [0, 2], [1, 2]],
 [[0, 1], [0, 0], [0, 2], [1, 3]],
 [[0, 1], [0, 0], [0, 2], [2, 2]],
 [[0, 1], [0, 0], [0, 2], [2, 3]],
 [[0, 1], [0, 0], [0, 2], [3, 3]],
 [[0, 1], [0, 0], [1, 1], [0, 0]],
 [[0, 1], [0, 0], [1, 1], [0, 1]],
 [[0, 1], [0, 0], [1, 1], [0, 2]],
 [[0, 1], [0, 0], [1, 1], [1, 1]],
 [[0, 1], [0, 0], [1, 1], [1, 2]],
 [[0, 1], [0, 0], [1, 1], [2, 2]],
 [[0, 1], [0, 0], [1, 1], [2, 3]],
 [[0, 1], [0, 0], [1, 2], [0, 0]],
 [[0, 1], [0, 0], [1, 2], [0, 1]],
 [[0, 1], [0, 0], [1, 2], [0, 2]],
 [[0, 1], [0, 0], [1, 2], [0, 3]],
 [[0, 1], [0, 0], [1, 2], [1, 1]],
 [[0, 1], [0, 0], [1, 2], [1, 2]],
 [[0, 1], [0, 0], [1, 2], [1, 3]],
 [[0, 1], [0, 0], [1, 2], [2, 2]],
 [[0, 1], [0, 0], [1, 2], [2, 3]],
 [[0, 1], [0, 0], [1, 2], [3, 3]],
 [[0, 1], [0, 0], [2, 2], [0, 0]],
 [[0, 1], [0, 0], [2, 2], [0, 1]],
 [[0, 1], [0, 0], [2, 2], [0, 2]],
 [[0, 1], [0, 0], [2, 2], [0, 3]],
 [[0, 1], [0, 0], [2, 2], [1, 1]],
 [[0, 1], [0, 0], [2, 2], [1, 2]],
 [[0, 1], [0, 0], [2, 2], [1, 3]],
 [[0, 1], [0, 0], [2, 2], [2, 2]],
 [[0, 1], [0, 0], [2, 2], [2, 3]],
 [[0, 1], [0, 0], [2, 2], [3, 3]],
 [[0, 1], [0, 0], [2, 3], [0, 0]],
 [[0, 1], [0, 0], [2, 3], [0, 1]],
 [[0, 1], [0, 0], [2, 3], [0, 2]],
 [[0, 1], [0, 0], [2, 3], [1, 1]],
 [[0, 1], [0, 0], [2, 3], [1, 2]],
 [[0, 1], [0, 0], [2, 3], [2, 2]],
 [[0, 1], [0, 0], [2, 3], [2, 3]],
 [[0, 1], [0, 1], [0, 0], [0, 0]],
 [[0, 1], [0, 1], [0, 0], [0, 1]],
 [[0, 1], [0, 1], [0, 0], [0, 2]],
 [[0, 1], [0, 1], [0, 0], [1, 1]],
 [[0, 1], [0, 1], [0, 0], [1, 2]],
 [[0, 1], [0, 1], [0, 0], [2, 2]],
 [[0, 1], [0, 1], [0, 0], [2, 3]],
 [[0, 1], [0, 1], [0, 1], [0, 0]],
 [[0, 1], [0, 1], [0, 1], [0, 1]],
 [[0, 1], [0, 1], [0, 1], [0, 2]],
 [[0, 1], [0, 1], [0, 1], [2, 2]],
 [[0, 1], [0, 1], [0, 1], [2, 3]],
 [[0, 1], [0, 1], [0, 2], [0, 0]],
 [[0, 1], [0, 1], [0, 2], [0, 1]],
 [[0, 1], [0, 1], [0, 2], [0, 2]],
 [[0, 1], [0, 1], [0, 2], [0, 3]],
 [[0, 1], [0, 1], [0, 2], [1, 1]],
 [[0, 1], [0, 1], [0, 2], [1, 2]],
 [[0, 1], [0, 1], [0, 2], [1, 3]],
 [[0, 1], [0, 1], [0, 2], [2, 2]],
 [[0, 1], [0, 1], [0, 2], [2, 3]],
 [[0, 1], [0, 1], [0, 2], [3, 3]],
 [[0, 1], [0, 1], [2, 2], [0, 0]],
 [[0, 1], [0, 1], [2, 2], [0, 1]],
 [[0, 1], [0, 1], [2, 2], [0, 2]],
 [[0, 1], [0, 1], [2, 2], [0, 3]],
 [[0, 1], [0, 1], [2, 2], [2, 2]],
 [[0, 1], [0, 1], [2, 2], [2, 3]],
 [[0, 1], [0, 1], [2, 2], [3, 3]],
 [[0, 1], [0, 1], [2, 3], [0, 0]],
 [[0, 1], [0, 1], [2, 3], [0, 1]],
 [[0, 1], [0, 1], [2, 3], [0, 2]],
 [[0, 1], [0, 1], [2, 3], [2, 2]],
 [[0, 1], [0, 1], [2, 3], [2, 3]],
 [[0, 1], [0, 2], [0, 0], [0, 0]],
 [[0, 1], [0, 2], [0, 0], [0, 1]],
 [[0, 1], [0, 2], [0, 0], [0, 2]],
 [[0, 1], [0, 2], [0, 0], [0, 3]],
 [[0, 1], [0, 2], [0, 0], [1, 1]],
 [[0, 1], [0, 2], [0, 0], [1, 2]],
 [[0, 1], [0, 2], [0, 0], [1, 3]],
 [[0, 1], [0, 2], [0, 0], [2, 2]],
 [[0, 1], [0, 2], [0, 0], [2, 3]],
 [[0, 1], [0, 2], [0, 0], [3, 3]],
 [[0, 1], [0, 2], [0, 1], [0, 0]],
 [[0, 1], [0, 2], [0, 1], [0, 1]],
 [[0, 1], [0, 2], [0, 1], [0, 2]],
 [[0, 1], [0, 2], [0, 1], [0, 3]],
 [[0, 1], [0, 2], [0, 1], [1, 1]],
 [[0, 1], [0, 2], [0, 1], [1, 2]],
 [[0, 1], [0, 2], [0, 1], [1, 3]],
 [[0, 1], [0, 2], [0, 1], [2, 2]],
 [[0, 1], [0, 2], [0, 1], [2, 3]],
 [[0, 1], [0, 2], [0, 1], [3, 3]],
 [[0, 1], [0, 2], [0, 2], [0, 0]],
 [[0, 1], [0, 2], [0, 2], [0, 1]],
 [[0, 1], [0, 2], [0, 2], [0, 2]],
 [[0, 1], [0, 2], [0, 2], [0, 3]],
 [[0, 1], [0, 2], [0, 2], [1, 1]],
 [[0, 1], [0, 2], [0, 2], [1, 2]],
 [[0, 1], [0, 2], [0, 2], [1, 3]],
 [[0, 1], [0, 2], [0, 2], [2, 2]],
 [[0, 1], [0, 2], [0, 2], [2, 3]],
 [[0, 1], [0, 2], [0, 2], [3, 3]],
 [[0, 1], [0, 2], [0, 3], [0, 0]],
 [[0, 1], [0, 2], [0, 3], [0, 1]],
 [[0, 1], [0, 2], [0, 3], [0, 2]],
 [[0, 1], [0, 2], [0, 3], [0, 3]],
 [[0, 1], [0, 2], [0, 3], [1, 1]],
 [[0, 1], [0, 2], [0, 3], [1, 2]],
 [[0, 1], [0, 2], [0, 3], [1, 3]],
 [[0, 1], [0, 2], [0, 3], [2, 2]],
 [[0, 1], [0, 2], [0, 3], [2, 3]],
 [[0, 1], [0, 2], [0, 3], [3, 3]],
 [[0, 1], [0, 2], [1, 1], [0, 0]],
 [[0, 1], [0, 2], [1, 1], [0, 1]],
 [[0, 1], [0, 2], [1, 1], [0, 2]],
 [[0, 1], [0, 2], [1, 1], [0, 3]],
 [[0, 1], [0, 2], [1, 1], [1, 1]],
 [[0, 1], [0, 2], [1, 1], [1, 2]],
 [[0, 1], [0, 2], [1, 1], [1, 3]],
 [[0, 1], [0, 2], [1, 1], [2, 2]],
 [[0, 1], [0, 2], [1, 1], [2, 3]],
 [[0, 1], [0, 2], [1, 1], [3, 3]],
 [[0, 1], [0, 2], [1, 2], [0, 0]],
 [[0, 1], [0, 2], [1, 2], [0, 1]],
 [[0, 1], [0, 2], [1, 2], [0, 2]],
 [[0, 1], [0, 2], [1, 2], [0, 3]],
 [[0, 1], [0, 2], [1, 2], [1, 1]],
 [[0, 1], [0, 2], [1, 2], [1, 2]],
 [[0, 1], [0, 2], [1, 2], [1, 3]],
 [[0, 1], [0, 2], [1, 2], [2, 2]],
 [[0, 1], [0, 2], [1, 2], [2, 3]],
 [[0, 1], [0, 2], [1, 2], [3, 3]],
 [[0, 1], [0, 2], [1, 3], [0, 0]],
 [[0, 1], [0, 2], [1, 3], [0, 1]],
 [[0, 1], [0, 2], [1, 3], [0, 2]],
 [[0, 1], [0, 2], [1, 3], [0, 3]],
 [[0, 1], [0, 2], [1, 3], [1, 1]],
 [[0, 1], [0, 2], [1, 3], [1, 2]],
 [[0, 1], [0, 2], [1, 3], [1, 3]],
 [[0, 1], [0, 2], [1, 3], [2, 2]],
 [[0, 1], [0, 2], [1, 3], [2, 3]],
 [[0, 1], [0, 2], [1, 3], [3, 3]],
 [[0, 1], [0, 2], [2, 2], [0, 0]],
 [[0, 1], [0, 2], [2, 2], [0, 1]],
 [[0, 1], [0, 2], [2, 2], [0, 2]],
 [[0, 1], [0, 2], [2, 2], [0, 3]],
 [[0, 1], [0, 2], [2, 2], [1, 1]],
 [[0, 1], [0, 2], [2, 2], [1, 2]],
 [[0, 1], [0, 2], [2, 2], [1, 3]],
 [[0, 1], [0, 2], [2, 2], [2, 2]],
 [[0, 1], [0, 2], [2, 2], [2, 3]],
 [[0, 1], [0, 2], [2, 2], [3, 3]],
 [[0, 1], [0, 2], [2, 3], [0, 0]],
 [[0, 1], [0, 2], [2, 3], [0, 1]],
 [[0, 1], [0, 2], [2, 3], [0, 2]],
 [[0, 1], [0, 2], [2, 3], [0, 3]],
 [[0, 1], [0, 2], [2, 3], [1, 1]],
 [[0, 1], [0, 2], [2, 3], [1, 2]],
 [[0, 1], [0, 2], [2, 3], [1, 3]],
 [[0, 1], [0, 2], [2, 3], [2, 2]],
 [[0, 1], [0, 2], [2, 3], [2, 3]],
 [[0, 1], [0, 2], [2, 3], [3, 3]],
 [[0, 1], [0, 2], [3, 3], [0, 0]],
 [[0, 1], [0, 2], [3, 3], [0, 1]],
 [[0, 1], [0, 2], [3, 3], [0, 2]],
 [[0, 1], [0, 2], [3, 3], [0, 3]],
 [[0, 1], [0, 2], [3, 3], [1, 1]],
 [[0, 1], [0, 2], [3, 3], [1, 2]],
 [[0, 1], [0, 2], [3, 3], [1, 3]],
 [[0, 1], [0, 2], [3, 3], [2, 2]],
 [[0, 1], [0, 2], [3, 3], [2, 3]],
 [[0, 1], [0, 2], [3, 3], [3, 3]],
 [[0, 1], [2, 2], [0, 0], [0, 0]],
 [[0, 1], [2, 2], [0, 0], [0, 1]],
 [[0, 1], [2, 2], [0, 0], [0, 2]],
 [[0, 1], [2, 2], [0, 0], [0, 3]],
 [[0, 1], [2, 2], [0, 0], [1, 1]],
 [[0, 1], [2, 2], [0, 0], [1, 2]],
 [[0, 1], [2, 2], [0, 0], [1, 3]],
 [[0, 1], [2, 2], [0, 0], [2, 2]],
 [[0, 1], [2, 2], [0, 0], [2, 3]],
 [[0, 1], [2, 2], [0, 0], [3, 3]],
 [[0, 1], [2, 2], [0, 1], [0, 0]],
 [[0, 1], [2, 2], [0, 1], [0, 1]],
 [[0, 1], [2, 2], [0, 1], [0, 2]],
 [[0, 1], [2, 2], [0, 1], [0, 3]],
 [[0, 1], [2, 2], [0, 1], [2, 2]],
 [[0, 1], [2, 2], [0, 1], [2, 3]],
 [[0, 1], [2, 2], [0, 1], [3, 3]],
 [[0, 1], [2, 2], [0, 2], [0, 0]],
 [[0, 1], [2, 2], [0, 2], [0, 1]],
 [[0, 1], [2, 2], [0, 2], [0, 2]],
 [[0, 1], [2, 2], [0, 2], [0, 3]],
 [[0, 1], [2, 2], [0, 2], [1, 1]],
 [[0, 1], [2, 2], [0, 2], [1, 2]],
 [[0, 1], [2, 2], [0, 2], [1, 3]],
 [[0, 1], [2, 2], [0, 2], [2, 2]],
 [[0, 1], [2, 2], [0, 2], [2, 3]],
 [[0, 1], [2, 2], [0, 2], [3, 3]],
 [[0, 1], [2, 2], [0, 3], [0, 0]],
 [[0, 1], [2, 2], [0, 3], [0, 1]],
 [[0, 1], [2, 2], [0, 3], [0, 2]],
 [[0, 1], [2, 2], [0, 3], [0, 3]],
 [[0, 1], [2, 2], [0, 3], [1, 1]],
 [[0, 1], [2, 2], [0, 3], [1, 2]],
 [[0, 1], [2, 2], [0, 3], [1, 3]],
 [[0, 1], [2, 2], [0, 3], [2, 2]],
 [[0, 1], [2, 2], [0, 3], [2, 3]],
 [[0, 1], [2, 2], [0, 3], [3, 3]],
 [[0, 1], [2, 2], [2, 2], [0, 0]],
 [[0, 1], [2, 2], [2, 2], [0, 1]],
 [[0, 1], [2, 2], [2, 2], [0, 2]],
 [[0, 1], [2, 2], [2, 2], [0, 3]],
 [[0, 1], [2, 2], [2, 2], [2, 2]],
 [[0, 1], [2, 2], [2, 2], [2, 3]],
 [[0, 1], [2, 2], [2, 2], [3, 3]],
 [[0, 1], [2, 2], [2, 3], [0, 0]],
 [[0, 1], [2, 2], [2, 3], [0, 1]],
 [[0, 1], [2, 2], [2, 3], [0, 2]],
 [[0, 1], [2, 2], [2, 3], [0, 3]],
 [[0, 1], [2, 2], [2, 3], [2, 2]],
 [[0, 1], [2, 2], [2, 3], [2, 3]],
 [[0, 1], [2, 2], [2, 3], [3, 3]],
 [[0, 1], [2, 2], [3, 3], [0, 0]],
 [[0, 1], [2, 2], [3, 3], [0, 1]],
 [[0, 1], [2, 2], [3, 3], [0, 2]],
 [[0, 1], [2, 2], [3, 3], [0, 3]],
 [[0, 1], [2, 2], [3, 3], [2, 2]],
 [[0, 1], [2, 2], [3, 3], [2, 3]],
 [[0, 1], [2, 2], [3, 3], [3, 3]],
 [[0, 1], [2, 3], [0, 0], [0, 0]],
 [[0, 1], [2, 3], [0, 0], [0, 1]],
 [[0, 1], [2, 3], [0, 0], [0, 2]],
 [[0, 1], [2, 3], [0, 0], [1, 1]],
 [[0, 1], [2, 3], [0, 0], [1, 2]],
 [[0, 1], [2, 3], [0, 0], [2, 2]],
 [[0, 1], [2, 3], [0, 0], [2, 3]],
 [[0, 1], [2, 3], [0, 1], [0, 0]],
 [[0, 1], [2, 3], [0, 1], [0, 1]],
 [[0, 1], [2, 3], [0, 1], [0, 2]],
 [[0, 1], [2, 3], [0, 1], [2, 2]],
 [[0, 1], [2, 3], [0, 1], [2, 3]],
 [[0, 1], [2, 3], [0, 2], [0, 0]],
 [[0, 1], [2, 3], [0, 2], [0, 1]],
 [[0, 1], [2, 3], [0, 2], [0, 2]],
 [[0, 1], [2, 3], [0, 2], [0, 3]],
 [[0, 1], [2, 3], [0, 2], [1, 1]],
 [[0, 1], [2, 3], [0, 2], [1, 2]],
 [[0, 1], [2, 3], [0, 2], [1, 3]],
 [[0, 1], [2, 3], [0, 2], [2, 2]],
 [[0, 1], [2, 3], [0, 2], [2, 3]],
 [[0, 1], [2, 3], [0, 2], [3, 3]],
 [[0, 1], [2, 3], [2, 2], [0, 0]],
 [[0, 1], [2, 3], [2, 2], [0, 1]],
 [[0, 1], [2, 3], [2, 2], [0, 2]],
 [[0, 1], [2, 3], [2, 2], [0, 3]],
 [[0, 1], [2, 3], [2, 2], [2, 2]],
 [[0, 1], [2, 3], [2, 2], [2, 3]],
 [[0, 1], [2, 3], [2, 2], [3, 3]],
 [[0, 1], [2, 3], [2, 3], [0, 0]],
 [[0, 1], [2, 3], [2, 3], [0, 1]],
 [[0, 1], [2, 3], [2, 3], [0, 2]],
 [[0, 1], [2, 3], [2, 3], [2, 2]],
 [[0, 1], [2, 3], [2, 3], [2, 3]]
更新日時:2021/07/24 18:18
(作成日時:2021/07/23 23:17)
コメント( 2 )
つてつち
つてつち
2021年7月24日 16時10分

ツモパターンの定義や求め方を数学の言葉で記述する試み、とても興味深いです。
私も過去に6手目までのツモパターンをプログラムで全列挙したことがありますので、何かの参考になりましたら幸いです。
(参考:『最初の6手は40067通り(1通りずつすべて画像化しました)』 https://puyo-camp.jp/posts/70935 )
記事のリンク先でツモパターン、視覚化した画像、プログラムも公開しております。記事ではABCDから始まるツモパターンは無いものとして(ゲームの仕様通り)プログラムを実行した結果を載せていますが、プログラムではABCDから始まるツモパターンを含めたものを出力するかどうか選べるようにしてあります。
また、記事中でも紹介しておりますが、一般のn手目までのツモが何通りあるのかを計算する公式がlapis-lazuli氏によって発見されています。

田中夕張
田中夕張
2021年7月24日 18時11分

拝見させて頂きました。
非常に興味深いですし、ご紹介いただいたことをヒントにもう少し発展させることが出来るような気がしました。
群論を用いてツモの通りを計算する公式の存在にも非常に驚かされました。
コメントありがとうございます。

つてつち
コメントするにはログインが必要です
シェア