求组合数取模的几种方法
求Cnm%P 其中P为大质数
①利用杨辉三角
②Cnm=[n*(n-1)......*(n-2)]/[m*(m-1)....*1],由式子的意义可知此数肯定为整数,将分子分解质因数,记录下各个质因子的个数,减去对应的分母的质因子的个数,最后每个质数的个数肯定非负,在统计各个质因子的个数,最后对P取模
③利用费马小定理,令F[n]=n!%P,G[n]存放F[n]模P的逆元,对于n不超过1e6,则Cnm=n!/[(n-m)!*m!]%P=F[n]/(F[n-m]*F[m])%P=F[n]*G[n]*G[n]%P.