递推递归练习F - 计算组合数
2017-03-24 18:16
211 查看
Description
计算组合数。C(n,m),表示从n个数中选择m个的组合数。
计算公式如下:
若:m=0,C(n,m)=1
否则, 若 n=1,C(n,m)=1
否则,若m=n,C(n,m)=1
否则 C(n,m) = C(n-1,m-1) + C(n-1,m).
Input
第一行是正整数N,表示有N组要求的组合数。接下来N行,每行两个整数n,m (0 <= m <= n <= 20)。
Output
输出N行。每行输出一个整数表示C(n,m)。
Sample Input
Sample Output
这道题。。。真的不想说什么,题目什么都给出来了,直接写,不会超时。。。
真是水的一批。。!!
代码如下:
#include<bits/stdc++.h>
using namespace std;
int C(int n,int m)
{
if(m==0)
{
return 1;
}
else if(n==1)
{
return 1;
}
else if(m==n)
{
return 1;
}
else
{
return C(n-1,m-1)+C(n-1,m);
}
}
int main()
{
int N,n,m;
cin>>N;
while(N--)
{
cin>>n>>m;
cout<<C(n,m)<<endl;
}
}
计算组合数。C(n,m),表示从n个数中选择m个的组合数。
计算公式如下:
若:m=0,C(n,m)=1
否则, 若 n=1,C(n,m)=1
否则,若m=n,C(n,m)=1
否则 C(n,m) = C(n-1,m-1) + C(n-1,m).
Input
第一行是正整数N,表示有N组要求的组合数。接下来N行,每行两个整数n,m (0 <= m <= n <= 20)。
Output
输出N行。每行输出一个整数表示C(n,m)。
Sample Input
32 13 24 0
Sample Output
231
这道题。。。真的不想说什么,题目什么都给出来了,直接写,不会超时。。。
真是水的一批。。!!
代码如下:
#include<bits/stdc++.h>
using namespace std;
int C(int n,int m)
{
if(m==0)
{
return 1;
}
else if(n==1)
{
return 1;
}
else if(m==n)
{
return 1;
}
else
{
return C(n-1,m-1)+C(n-1,m);
}
}
int main()
{
int N,n,m;
cin>>N;
while(N--)
{
cin>>n>>m;
cout<<C(n,m)<<endl;
}
}
相关文章推荐
- 递推递归练习F - 计算组合数
- 递推递归练习 F 计算组合数
- ACM-递归递推练习F-计算组合数
- ACM递推递归练习F计算组合数
- 递归递推之计算组合数
- 递推递归练习--F(计算组合数)
- 递推递归专题 F 计算组合数
- 递归与递推——C-递归的函数,F-计算组合数
- 递推递归练习总结
- 第1个人10,第2个比第1个人大2岁,依次递推,用递归方式计算出第8个人多大?
- 递归递推练习——I
- 递推递归练习A - 母牛的故事
- 递推递归练习 K 加强斐波那 4000 契
- 递推递归练习J - 数学黑洞
- 递推递归练习E
- ACM-递归递推练习I-蟠桃记
- 递归递推练习–4
- 【openjudge 计算概论(A)】[函数递归练习(3)]
- ACM递推递归练习I 蟠桃记
- 递推递归练习 -A 母牛问题 / / E .兔子繁殖问题