Lucas定理

Posted jc12138

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Lucas定理相关的知识,希望对你有一定的参考价值。

Lucas定理:

C(n, m) % p = Lucas(n, m, p) =C(n%p, m%p) * Lucas(n/p, m/p, p) % p;

即:Lucas(n,m,p)=c(n%p,m%p)*Lucas(n/p,m/p,p) 

其中p 为质数,且用Lucas定理时,n,m很大,p小于1e5。

 

证明

技术分享图片

 

代码实现

LL Lucas(LL a, LL b)
{
    if(a < mod && b < mod)
        return C(a, b);
    return
        C(a % mod, b % mod) * Lucas(a / mod, b / mod);
}

 

以上是关于Lucas定理的主要内容,如果未能解决你的问题,请参考以下文章

数论Lucas定理

FZU 2020 组合 (Lucas定理)

HDU 3037 Saving Beans (数论,Lucas定理)

lucas定理

HDU Interesting Yang Yui Triangle (Lucas定理)

Lucas定理及应用