设为首页 加入收藏

TOP

问题一百三十一:组合数
2014-11-23 22:13:07 来源: 作者: 【 】 浏览:1
Tags:问题 一百三十一 组合

Description


求C(N, M),即求M个数中选N个数的组合方案数。


Input


第一行一个正整数T (T<=10), 表示有T组测试数据。第二行~第T+1行,每行有2个正整数N,M (1<=N, M<=20)。


Output


对于每组输入N,M,输出一行,该行有一个数,为C(N, M)值。


Sample Input


2
3 5
1 20


Sample Output


10

20


[plain] #include

__int64 fac(int a);

int main()
{
int num;
int n;
int m;
scanf("%d", &num);

while(num--)
{
scanf("%d %d", &n, &m);

printf("%d", fac(m)/fac(n)/fac(m-n));

if(num>0)
{
printf("\n");
}
}

return 0;
}

__int64 fac(int a)
{
int i;
__int64 sum;

sum=1;
if(a==0)
{
sum=1;
}
else
{
for(i=1; i<=a; i++)
{
sum*=i;
}
}

return sum;
}

#include

__int64 fac(int a);

int main()
{
int num;
int n;
int m;
scanf("%d", &num);

while(num--)
{
scanf("%d %d", &n, &m);

printf("%d", fac(m)/fac(n)/fac(m-n));

if(num>0)
{
printf("\n");
}
}

return 0;
}

__int64 fac(int a)
{
int i;
__int64 sum;

sum=1;
if(a==0)
{
sum=1;
}
else
{
for(i=1; i<=a; i++)
{
sum*=i;
}
}

return sum;
}

\

】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇问题一百二十九:阿基米德特性 下一篇问题一百三十:字符矩阵排序

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: