求组合数模板

来源:互联网 发布:淘宝模特发型女 编辑:程序博客网 时间:2024/05/18 04:24
long long c[100][50];void C(long long n,long long m){    long long i,j;    if(m>n/2)        m=n-m;    memset(c,0,sizeof(c));    for(i=0;i<=m;i++)        c[0][i]=c[1][i]=1;    for(i=0;i<=m;i++)        c[i][i]=1;    for(i=0;i<=n;i++)        c[i][0]=1;    for(i=1;i<=n;i++)    {        for(j=1;j<=m;j++)        {            if(i!=j)                c[i][j]=(c[i-1][j]+c[i-1][j-1]);        }    }}

组合数取模

const int mod=10056;int f[1001];int combine(int n,int m) //计算组合数C(n,m){    int sum=1; //线性计算    for(int i=1,j=n;i<=m;i++,j--)    {        sum=sum*j/i;        sum=sum%mod;    }    return sum;}
0 0
原创粉丝点击