二项式系数

因为在组合数学里面的重要应用,这里简单总结一下二项式系数的性质。

(1)   Ckn=Ckn1+Ck1n1

(2)   Ckn=Ck1nnk+1k 这个式子在组合数取模运算的时候可以将时间复杂度降到 O(k)

(3)    nk=0Cik=Ci+1n+1 n i 列的和等于 n+1 行第 i+1

Lucus定理

(nm)(n/pm/p)(n%pm%p)(MOD p)

n=di=0nipi 将n展开成 p 进制

m=di=0mipi

(nm)di=0(nimi)(mod p)

代码

LL Lucus(LL n,LL m, LL p)
{
  if(m == 0)return 1else return cal(n%p,m%p,p)*Lucus(n/p,m/p,p)%p;
}

多项式

(1x)n=(n+k1k1)xk

总结

二项式的一些特殊性质在取模的时候非常有用,比如这一道题
http://acm.fzu.edu.cn/problem.php?pid=2020
用2式解决起来会很简单

还有除此之外你还得知道关于摸运算的一些性质,

你可能感兴趣的:(算法理论)