私の古い本のパズルでは、2人のプレーヤーがコインを繰り返し弾いたときに最初に現れると信じているコインフリップのシーケンスを選択するゲームが定義されています。(実際にはサイコロと奇数のサイコロが振られましたが、この小さな詳細は問題の等価性の観点では重要ではありません。)
なお、プレイヤー1を選択した場合TTT
、プレイヤー2を選択したがHTT
、そのプレイヤー2が唯一の方法であるため、試合に勝つの7/8のチャンスがあるTTT
前に来ることができますが、HTT
最初の3つのフリップは、すべてのテールがある場合です。
あなたの仕事は、2つの選択されたシーケンスのうちの1つが最初に来る確率を推定するプログラムまたは関数を作成することです。プログラムは2行の入力(または引数として2つの文字列)を取り、それぞれが長さ10以下のシーケンスを表します。
HTT
TTT
そして、最初のプレイヤーが勝つ確率を小数または小数形式で出力します:
7/8
0.875
どの言語でもこれを行う最短のコードが優先されます。