首页 > 代码库 > 组合数
组合数
公式递推代码
C(n, m) = C(n -1, m - 1) + C(n - 1, m)
计算组合数的公式是:
c(m,n)=m!/(n!*(m-n)!)
利用杨辉三角来解决组合数可以避免数据超范围!!!
第二届山东省省赛
D Binomial Coeffcients
#include <iostream>
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
using namespace std;
int dp[1001][1001];
int main()
{
int t,n,m;
memset(dp,0,sizeof(dp));
dp[0][0]=1;
for(int i=1;i<=1000;i++)
{
dp[i][0]=1;
for(int j=1;j<=i;j++)
{
dp[i][j]=(dp[i-1][j]+dp[i-1][j-1])%10000003;
}
}
scanf("%d",&t);
while(t--)
{
scanf("%d%d",&n,&m);
printf("%d\n",dp[n][m]);
}
return 0;
}
没有理解思想,只能 背下来了!
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。