麻雀の順子と刻子の組み合わせってどのくらいあるんだろう?→プログラムで調べてみる

こんにちは~ cacaponです~

皆さんは麻雀ってやったことありますかね?
cacaponは結構麻雀好きなのです~でも、賭け事は嫌いです~
普通に一ゲームとして楽しみたいのですが…
仕方ないので我慢してます~

麻雀で上がるときの形って

(同じ牌が二つ)と
順子(しゅんつ 123みたいな数列)か刻子(こーつ 111みたいな同じ数字)が
4組で上がることができるんですけど…

ふと気になったのです、
この順子と刻子っの4組の組み合わせって何通りくらいあるんだろうと?

というわけで、作ってみました~

麻雀の組み合わせを調べるプログラム(頭は考慮してません)

 

コードの中身としては
最初に、一つの組をつくって…
次にそれを combinations_with_replacement で4つの重複組み合わせを作り…
最後に牌を5個以上使っている組合せを取り除く
って流れでやってます~

では、さっそく実行です~ …ちょっと時間かかるなぁ。
実行終わった後に組み合わせのcsvが出てくるんですけど、
下の行まで行ったら、366528通りありました!いっぱいですね!

ただ、これはあくまで「順子、刻子の4組」の組み合わせになります~
国士無双とか七対子とか特殊は形は考慮してませんし、
そもそも頭は考慮していないので純粋な上がりの組み合わせになると、
もっと多くなります~

頭も含めればいいじゃん、と思われるかと思いますが、
cacaponのプログラムだと抽出に時間がかかってしまいまして、
今回のブログでは断念しました~すみません~

もっと良いアルゴリズムを見つけたり、思いついたら
再チャレンジしたいと思います♪