(eden)计算系数

计算系数

Description:

给出一个多项式(x+y)^K,询问x^n * y^m的系数

输入两个数n, m。     K为n+m的和。n,m均不超过100

因为系数可能非常大,所以要求输出模10007后的结果

样例输入

1 2

样例输出

3

 

 

Hint:

Hint is not available for this exercise.

代码

 1 #include<stdio.h>
 2 #include<math.h>
 3 int main() {
 4     int n, m;
 5     scanf("%d%d", &n, &m);
 6     int i, j, f[400][400];
 7     for (i = 0; i <= n + m; i++) {
 8         for (j = 1; j < i; j++) {
 9             f[i][j] = (f[i - 1][j - 1] + f[i - 1][j]) % 10007;
10         }
11         f[i][0] = 1;
12         f[i][i] = 1;
13     }
14     printf("%d\n", f[n + m][n]);
15 }

否则会出现精度错误,像这样

1.#include<stdio.h>
2.#include<math.h>
3.double jisuan(int n, int k) {
4.    int i;
5.    double t1 = 1.0, t2 = 1.0;
6.    for (i = k; i >= k - n + 1; i--) {
7.        t1 = t1 * i;
8.    }
9.    for (i = n; i >= 2; i--) {
10.        t2 = t2 * i;
11.    }
12.    return (t1 / t2);
13.}
14.int main() {
15.    int n, m;
16.    scanf("%d%d", &n, &m);
17.    double result1 = jisuan(n, n + m);
18.    double result = fmod(result1, 10007);
19.    printf("%.0lf\n", result);
20.}

过不了的

posted @ 2016-01-06 10:50  小预备  阅读(220)  评论(0编辑  收藏  举报