组合数

1 C[0][0] = 1; //i是下标 j是上标
2 for(int i = 1; i <= 100; i ++)
3 {
4     C[i][0] =  1;
5     for(int j = 1; j <= i; j ++)
6     {
7         C[i][j] = C[i - 1][j - 1] + C[i - 1][j]; //可在这里取模
8     }
9 } 

 

ll C(int a,int b)
{
    ll ans = 1;
    for(int i = a,j = 1;i > a - b;i --,j ++)
    {
        ans = ans*i*1ll/j;
    }
    return ans;
}

 

posted @ 2019-07-19 18:48  缘未到  阅读(138)  评论(0编辑  收藏  举报