6-2
(2/2 分数)
题目描述
已知f(n, 0) = 1, f(n,n) = 1
当n>m>0时,f(n,m) = f(n-1,m-1) + f(n-1, m)
求f(a, b)
多行输入,每一行输入两个正整数a, b (1 <= b <= a <= 10),a,b以空格隔开
输出格式 每一行输出f(a,b)值
2 2 3 2样例输出
1 3代码框
#include <iostream>
using namespace std;
const int M=100;
int f(int m,int n);
int main(){
int a[M][2];
int temp;
int i=0,j=0;
while(cin>>temp){
if(temp<1||temp>10) return false;
a[i][j]=temp;
if(j==0) j++;
else{
if(a[i][0]<a[i][1]) return false;
j=0;
i++;
cout<<endl;
}
}
int k=i;
for(int i=0;i<k;i++){
cout<<f(a[i][0],a[i][1])<<endl;
}
return 0;
}
int f(int n,int m){
if(m==n||m==0) return 1;
else return f(n-1,m-1)+f(n-1,m);
}