[恢]hdu 1799

2011-12-30 17:35:04

地址:http://acm.hdu.edu.cn/showproblem.php?pid=1799

题意:中文。

mark:其实就是组合数。。。因为m重循环就是在n个数字里选n个作为变量。。。

代码:

# include <stdio.h>

int dp[2010][2010] ;


void init()
{
int i, j ;
dp[0][0] = 1 ;
for (i = 1 ; i <= 2000 ; i++)
{
dp[i][0] = 1 ;
for (j = 1 ; j <= i ; j++)
dp[i][j] = (dp[i-1][j] + dp[i-1][j-1]) % 1007 ;
}
}


int main ()
{
int T, n, m ;
init() ;
scanf ("%d", &T) ;
while (T--)
{
scanf ("%d%d", &m, &n) ;
printf ("%d\n", dp[n][m]) ;
}
return 0 ;
}



posted @ 2012-01-07 00:09  Seraph2012  阅读(232)  评论(0编辑  收藏  举报