lucas定理
Posted darlingroot
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了lucas定理相关的知识,希望对你有一定的参考价值。
听着很高大上的名词
但
它是干什么的呢?
组合数太大&&被一个素数取模
公式:
Lucas(n,m)=C(n,m) %p =C(n %p,m %p )∗Lucas(n/p,m/p))%p
递推边界----------Lucas(i,0)=1
int C(int n,int m) { int ans=1; for(int i=1;i<=m;++i) ans*=(n-m+i)*inv[i]%p; return ans; } int lucas(int n,int m) { if(m==0) return 1; else return C(n%p,m%p)*lucas(n/p,m/p)%p; }
以上是关于lucas定理的主要内容,如果未能解决你的问题,请参考以下文章
HDU 3037 Saving Beans (数论,Lucas定理)