sdut 2164 Binomial Coeffcients
6531 ワード
http://acm.sdut.edu.cn/sdutoj/problem.php?action=showproblem&problemid=2164
篇を貼って組み合わせの数を書いてmodの比較的に良い投稿を求めます
ここでのn,mは比較的小さいので,式を用いて直接推論すればc(n,m)=c(n−1,m)+c(n−1,m−1)である.
View Code
篇を貼って組み合わせの数を書いてmodの比較的に良い投稿を求めます
ここでのn,mは比較的小さいので,式を用いて直接推論すればc(n,m)=c(n−1,m)+c(n−1,m−1)である.
1 #include <iostream>
2 #include<cstdio>
3 #include<cstring>
4 #include<algorithm>
5 #include<stdlib.h>
6 #include<vector>
7 #include<map>
8 #include<cmath>
9 #include<stdlib.h>
10 using namespace std;
11 #define LL long long
12 #define mod 10000003
13 int cc[1010][1010];
14 void cn(int n,int m)
15 {
16 int i,j;
17 for(i = 0 ; i <= n ;i++)
18 {
19 cc[i][0] = 1;
20 cc[i][i] = 1;
21 cc[i][1] = i;
22 }
23 for(i = 2; i <= n ; i++)
24 for(j = 1; j <= m ; j++)
25 cc[i][j] = (cc[i-1][j]%mod+cc[i-1][j-1]%mod)%mod;
26 }
27 int main()
28 {
29 int c,n,k,i;
30 cn(1000,1000);
31 cin>>c;
32 while(c--)
33 {
34 cin>>n>>k;
35
36 printf("%d
",cc[n][k]);
37 }
38 return 0;
39 }
40
41
42
43
44 /**************************************
45 Problem id : SDUT OJ 2164
46 User name : shang
47 Result : Accepted
48 Take Memory : 4420K
49 Take Time : 10MS
50 Submit Time : 2014-01-18 16:32:30
51 **************************************/
View Code