たくあんおいしいのブログ

たくあんを食べながらプログラミングとかしますよ

書き初めしたのでまとめ

f:id:takuan_oishii:20150101004514p:plain

2015年の書き初めに「あ,け,ま,し,て,お,め,で,と,う,ご,ざ,い,ま,す」の中からランダムに文字を抽出して「あけましておめでとうございます」が揃ったら停止するプログラムを書きました.
(酔っ払って計算を間違ってなければ)1回の試行で揃う確率はだいたい 4/43789389e+17 .
1秒間でだいたい10万回試行できそうなので,1分では60万回の試行できそう.
60万回ハズし続ける確率を計算すれば,1分以内に揃う確率がわかることになる. 1分間ハズし続ける確率は

f:id:takuan_oishii:20150101010756p:plain

1らしい.
揃わないってことだね.

1月5日追記
やっぱり酔っ払ってた.

「1秒間でだいたい10万回試行できそうなので,1分では60万回の試行できそう. 」
嘘です. 1秒間で10万回試行できるなら1分では600万回の試行です. 小学生でもわかります.

「1回の試行で揃う確率はだいたい 4/43789389e+17」
これも心配になったのでちゃんと考え直します.
”あけましておめでとうございます”が揃う確率は, 1文字目に15文字の中から”あ”が選ばれる確率×2文字目に15文字の中から”け”が選ばれる確率×3文字目に・・・を計算すれば求められる.
15文字の中から1文字選ぶってことは確率は1/15なので, ”あけましておめでとうございます”が揃う確率は(1/15)15になりそうな気もするが, 15文字中に”ま”が2回登場するので,3文字目に”ま”が選ばれる確率は2/15であり,14文字目に”ま”が選ばれる確率も2/15である.
ので,”あけましておめでとうございます”が揃う確率は(1/15)13 × (2/15)2 = 4 / 1515 となる.
で, 1515 っていうのがいったいいくらなのかというと4.3789389e+17なのでこれはあってたらしい.
ちなみにこれ, すごくざっくりと 1/1.0e+17 って感じに通分すると10京分の1だ. すごい.(これも数え間違いとかだったらすごい恥ずかしい. 今は酔ってない.)

1分間に600万回試行できることになってしまったので1分以内に揃う確率も再計算せねばなるまいが, 10京分の1とか言われちゃうと600万回とか屁みたいなもんなので結局1分以内に揃う確率もほぼ0だ.
じゃあ逆に何回やれば揃うんだよって話にしてみるが, n分の1の確率で起こることがn回試行以内に起きる確率はだいたい63%(nが大きければだいたい63%に近づくんだよね確か)なので, 10京回試行すれば結構揃ってくれそうな気もする.
で, 10京回試行するにはどのくらい時間がかかるかと言うと, 10京/600万 = 16666666666.7 で, 16666666667分くらいだ. 実に31709年である.
揃わないってことだね.