N!分解质因子p的个数_快速求组合数C(n,m)

int f(int n,int p)
{
    if(n==0) return 0;
    return f(n/p,p) + n/p;
}

https://www.xuebuyuan.com/2867209.html

 求组合数C(n,m)(modp)

C(n,m)=n!/(m!*(n-m)!) ,只要对分子和分母分别分解素因子,然后因为C(n,m)肯定是整数,所以C(n,m)肯定可以表示成p1^t1*p2^t2*......pi^ti的形式,只要拿分子素因子的幂减去分母对应的素因子的幂即可。

posted @ 2018-09-28 20:31  过路人1998  阅读(252)  评论(0编辑  收藏  举报