Lucas定理
对于C(m,n)%P(P是质数)这样的问题,可以通过预处理阶乘和阶乘的逆元,来快速计算。但是当m,n大于P时,就不能保证m,n与P互质了,但不互质的情况下,乘法逆元不存在,此时就需要卢卡斯定理来减小m,n的规模,此处证明略去,给出公式:
C(n,m)%P=C(n/P,m/P)*C(n%P,m%P)%P
```C++
ll Lucas(ll n,ll m)
{
if (m==0)
return 1;
return C(n%mod,m%mod)*Lucas(n/mod,m/mod)%mod;
}
```
相关文章:
猜你喜欢
-
2021-04-18
-
2021-08-28
-
2021-11-13
-
2021-12-17
-
2021-08-11
-
2021-07-07
-
2022-12-23
相关资源
-
下载
2021-11-03
-
下载
2021-11-02
-
下载
2022-12-29
-
下载
2023-01-11