1-n,n个正整数中任取m个数计算乘积,求这些乘积的和?

但是用这种方法求和涉及到数列1~2,2~2,3~2…n~2的求和,如果给出累进数列的每项乘积因子则又涉及数列{n~3},{n~4},…的求和,所以利用通项求常见累进数列

通过平台发起求助,成功后即可免费获取论文全文。

我们已与文献出版商建立了直接购买合作。

你可以通过身份认证进行实名认证,认证成功后本次下载的费用将由您所在的图书馆支付

您可以直接购买此文献,1~5分钟即可下载全文,部分资源由于网络原因可能需要更长时间,请您耐心等待哦~


算法的时间复杂度比前两种方案都低,基本上跟n以内的素数个数呈线性关系,而素数个数通常比n都小几个数量级,例如100万以内的素数不到8万个。用筛法生成素数的时间接近线性。该方案1秒钟能计算 1kw数量级的组合数。如果要计算更大,内存和时间消耗都比较大。

设p是一个素数(题目中要求取模的数也是素数),将n,m均转化为p进制数,表示如下:
该方案能支持整型范围内所有数的组合数计算,甚至支持64位整数,注意中途溢出处理。该算法的时间复杂度跟n几乎不相关了,可以认为算法复杂度在常数和对数之间。

我要回帖

更多关于 输入两个正整数m和n 的文章

 

随机推荐