AcWing 885. 递推法求组合数 (模板)

题目链接:点击这里

在这里插入图片描述
C n m = C n 1 m + C n 1 m 1 C_n^m = C_{n-1}^{m}+C_{n-1}^{m-1}

#include<iostream>
#include<cstdio>
#include<algorithm>

using namespace std;

const int N = 2010, mod = 1e9 + 7;
int c[N][N];

void init()
{
    for(int i = 0; i < N; ++i)
    {
        for(int j = 0; j <= i; ++j)
        {
            if(!j)  c[i][j] = 1;
            else    c[i][j] = (c[i-1][j] + c[i-1][j-1]) % mod;
        }
    }
}

int main()
{
    init();
    
    int n;
    scanf("%d", &n);
    
    while(n--)
    {
        int a, b;
        scanf("%d%d", &a, &b);
        printf("%d\n", c[a][b]);
    }
    
    return 0;
}
发布了811 篇原创文章 · 获赞 127 · 访问量 14万+

猜你喜欢

转载自blog.csdn.net/qq_42815188/article/details/104811991
今日推荐