中国人寿意外保险100:大学 排列组合(难,高手请进)

来源:百度文库 编辑:神马品牌网 时间:2024/04/18 08:45:53
写毕业论文涉及到一个算式
从1000个不同的数字中取出500个的组合的个数是多少?那位大哥能求,急需。
希望告知算法和答案……
厉害……
您有什么办法算出来的?
某一个软件?

C(500,1000)=
1000!/500!/500!=2.7028824094543656951561469362598e+299
还需要更精确么?
用计算器或者编程计算的

楼上的回答不够准确,准确答案为:
270288240945436569515614693625975275496152008446548287007392875106625428705522193898612483924502370165362606085021546104802209750050679917549894219699518475423665484263751733356162464079737887344364574161119497604571044985756287880514600994219426752366915856603136862602484428109296905863799821216320
共300位。

编个小程序2秒钟就算出来了。大致思路如下:用数组表示我们要的最终乘积,每个元素表示1位。自行编写一个简易乘法算法,对数组进行运算。将1000!、500!全部分解质因数并约去相同的质因数,最后剩下从2~997中的116个质因数。套入自编的乘法就可得到最后结果。

如果用计算器算近似结果就更容易了。排列组合的公式是C(N,m)=N!/[m!*(N-m)!],所以答案是1000!/(500!*500!)。用电脑上的计算器,选择“科学型”,采用阶乘(n!)运算,可以得到近似答案2.7028824094543656951561469362598e+299。

计算器 共 2.7E+299

HEHE 恐怖的答案

计算器能算的一个类似于C的符号