作者dounts (忘记过去)
看板C_and_CPP
标题Re: [问题] 请问 C (n) 取 (m) 的 function
时间Sun Feb 22 03:06:31 2009
※ 引述《dounts (忘记过去)》之铭言:
: 大家好 我现在写程式碰到一个问题
: 相信大家都学过 排列组合的 C (n) 取 (m)
: 我现在试着写 我自己设定了 factorial function
: f(x) = x! (用 for-loop)
: 所以 C(n,m) = n! / m! * (n-m)!
: 这样做在 n = 10 时可以
: 但在 n = 100 时就爆掉了
: 请问各位 怎麽处理这样的问题呢
: 非常感谢 谢谢
基本上 我就是要写 binomial distribution 的机率
但可能要写到 1000 trials
所以有比较好的方法 可以让数字不要爆调吗
非常感谢各位 谢谢....
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 64.131.237.93
1F:→ Splash5:要麽就大数 不然想办法看有没有化简一些运算的方式 02/22 03:08
2F:→ james732:大一的时候有写过速解法 不过我忘记是怎麽写的了… 02/22 03:34
3F:→ james732:关键好像是 不要去算那麽大的阶层 换个方法算 02/22 03:34
4F:推 LPH66:楼上正确 想想13!在int就爆了... 02/22 09:18
5F:推 llewxam:C(m,n) = C(m-1,n) + C(m-1,n-1) 用DP算 02/22 12:26
6F:推 littleshan:你是要输出几分之几的精确机率吗? 02/22 15:49
7F:→ littleshan:如果只是算几趴 用double即可 02/22 15:49