0
点赞
收藏
分享

微信扫一扫

7-1 计算组合数 (20 分)

老牛走世界 2022-03-30 阅读 100

题目描述:

计算组合数。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)

输入格式:

第一行是正整数N (1 <= N<= 100),表示有N组要求的组合数。

接下来N行,每行两个整数n,m (0 <= m <= n <= 20)。
输出格式:

输出N行。每行输出一个整数表示C(n,m)。

输入样例:

在这里给出一组输入。例如:

输出样例:

在这里给出相应的输出。例如:

参考代码:

#include<stdio.h>

int f(int n,int m)

{

    if(m==0)return 1;

    else if(n==1)return 1;

    else if(m==n)return 1;

    else return f(n-1,m-1)+f(n-1,m);

}

int main()

{

    int N,n,m;

    scanf("%d",&N);

    while(N--)

    {

        scanf("%d%d",&n,&m);

        printf("%d\n",f(n,m));

    }

    return 0;

}
举报

相关推荐

0 条评论