2D6で出る目の和の確率は簡単なわけですが、21さんのtwitterで出された問題
https://twitter.com/rubbishdog21/status/1368921996021485569
「サイコロ5個振って、うち1個が2,2,3,4,5,6のときの出る目の合計の確率が知りたい」は素朴にやるとちょっと大変、普通に5D6でも大変ですし、3D6でも5=1+1+3=1+2+2みたいな組み合わせを全部考えないといけないので結構大変。こういうのは次のように考えると少し楽になります。
n個のダイスを振るとして、∑d1,…,dnxd1+⋯+dnのk次の係数が出た目の和がkになる場合の数です。
この式は∑d1xd1…∑dnxdnと分解できて、結局(∑dxd)nです。nを決めて(x+x2+x3+x4+x5+x6)nを計算すれば良いのですが、それは人間技ではないので計算機に任せます。n=3として、Pythonならこんな感じで3行。
from sympy import *
x=Symbol(‘x’)
expand((x+x**2+x**3+x**4+x**5+x**6)**3)
21さんが考えた問題は5個のダイスのうち一つだけ2,2,3,4,5,6が出る場合なので、
expand((x**2+x**2+x**3+x**4+x**5+x**6)*(x+x**2+x**3+x**4+x**5+x**6)**4)
です。答は下に。
x30+5x29+15x28+35x27+71x26+129x25+ 211x24+315x23+435x22+561x21+675x20+759x19+ 801x18+795x17+741x16+645x15+525x14+399x13+ 281x12+181x11+105x10+55x9+25x8+9x7+2x6 21さんの解答https://twitter.com/rubbishdog21/status/1369241440224739331と同じです。
0 件のコメント:
コメントを投稿