PEをMathematicaで

Project Eulerに挑戦してみよう

Project Euler 100 / 組み合わせの確率

箱の中に15個の青い円盤と6個の赤い円盤からなる21個の色のついた円盤が入っていて,無作為に2つ取り出すとき,青い円盤2つを取り出す確率P(BB)は

P(BB) = (15/21) × (14/20) = 1/2

である。無作為に2つ取り出すとき,青い円盤2つを取り出す確率がちょうど1/2となるような次の組み合わせは, 箱が85個の青い円盤と35個の赤い円盤からなるときである。

箱の中の円盤の合計が10^12 = 1,000,000,000,000を超えるような最初の組み合わせを考える。箱の中の青い円盤の数を求めよ。

Problem 100 - Project Euler


「青がb個,赤がr個」で立式すると対称性の低い式を相手にするはめになってしまうので,「青がb個,合計x個」で考えます。
確率の条件:C[b,2]/C[x,2]=1/2 を整理すると

2b(b-1)=x(x-1)

ペル型方程式ですね。Reduce[ ] で一般項を求めて,はじめて x>10^12 となる b を求めました。