码迷,mamicode.com
首页 > 其他好文 > 详细

Lucas定理 、斯特灵公式

时间:2018-02-09 22:33:54      阅读:171      评论:0      收藏:0      [点我收藏+]

标签:rpd   mtu   UI   overflow   vpc   vbo   emc   gpt   nop   

斯特灵公式是一条用来取n阶乘的近似值的数学公式。

公式为:技术分享图片

用该公式我们可以用来估算n阶乘的值;估算n阶乘的在任意进制下的位数。

如何计算在R进制下的位数:我们可以结合对数来计算,比如十进制就是lg(n!)+1,二进制则是log2(n!)+1。

 

Lucas(卢卡斯)定理

公式为:技术分享图片(p为质数)

当然,当n较小时,我们可以用组合数里面的定理来递推求解

然而当n较大时,显然时间花费很大。而Lucas定理恰好是解决大组合数取模优解

在这里由于知识有限,不能完全看懂Lucas定理证明的全部过程。所以就不写了。

而代码实现Lucas定理也很简洁。只需要递归就行。

使用Lucas定理的时候需要注意:p不能太大于10^5。

Cnm=Cn/pm/p×Cnmodpmmodp(modp)

 

Cnm=Cn/pm/p×Cnmodpmmodp(modp)

 

Cnm=Cn/pm/p×Cnmodpmmodp(modp)

 

Lucas定理 、斯特灵公式

标签:rpd   mtu   UI   overflow   vpc   vbo   emc   gpt   nop   

原文地址:https://www.cnblogs.com/ISGuXing/p/8410585.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!