Problem 121

http://projecteuler.net/index.php?section=problems&id=121

確率を計算して、その逆数を求めるかんたんなお仕事
だったが、問題文を理解するのに多大な時間を費やした。
英語
きらいです。

prob m n | n == 0 = 1
         | m >  n = (prob (m-1) (n-1)+ m*prob (m-1) n)/(m+1)
         | m == n = 1/ product [1..m+1]
prizeFund n = floor$ 1 / prob n' m
    where n' = toRational n
          m = toRational$ (n`div`2+1)
main = print.prizeFund$15