组合数的计算

Posted accepting

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了组合数的计算相关的知识,希望对你有一定的参考价值。

////根据递推式dp[n][m]=dp[n-1][] 
//void cal()
//    C[0][0]=1;
//    for(int i=1;i<=1000;i++)
//        C[i][0]=C[i][i]=1;
//        for(int j=1;j<=(i>>1);j++)
//            C[i][j]=C[i][i-j]=(C[i-1][j-1]%mod+C[i-1][j]%mod)%mod;
//        
//    
// 
#include<bits/stdc++.h>
using namespace std;
const int N=1e3+7;
int dp[N][N];
void cinin()

    for(int i=0;i<=N;i++)
        dp[i][i]=dp[i][0]=1;
    
    for(int i=1;i<=N;i++)
        for(int j=1;j<=i;j++)
            dp[i][j]=(dp[i-1][j-1]+dp[i-1][j]);
        



int main()
    cinin();
    int n,m;
    while(cin>>n>>m)
        cout<<dp[n][m]<<endl;
    
    
    return 0;

dp[n][m]指从n个数中挑选m个

以上是关于组合数的计算的主要内容,如果未能解决你的问题,请参考以下文章

多类别组合数的快速计算[关闭]

组合数的计算

JustOj 1974: 简单的事情 (组合数)

组合数计算

P2822 组合数问题

求组合数