HDU1799 循环多少次?

来源:互联网 发布:linux mysql 远程连接 编辑:程序博客网 时间:2024/05/30 05:09

问题链接:HDU1799 循环多少次?。

问题简述:参见上述链接。

问题分析这是一个组合问题。

计算公式为:c(n,m)=c(n-1,m)+c(n-1,m-1)。

程序说明:(略)。

AC的C++语言程序如下:

/* HDU1799 循环多少次? */#include <iostream>#include <cstring>using namespace std;const int N = 2000;const int MOD = 1007;int c[N+1][N+1];void initc(){    c[0][0] = 1;    for(int i=1; i<=N; i++) {        c[i][0] = 1;        for(int j=1; j<=N; j++)            c[i][j] = (c[i-1][j-1] + c[i-1][j]) % MOD;    }}int main(){    int t, m, n;    initc();    cin >> t;    while(t--) {        cin >> m >> n;        cout << c[n][m] << endl;    }    return 0;}



1 0
原创粉丝点击