嘉然今天写代码


私信TA

用户名:2831019467

访问量:303

签 名:

等  级
排  名 7835
经  验 1229
参赛次数 0
文章发表 1
年  龄 0
在职情况 学生
学  校 浙江工商大学
专  业

  自我简介:

TA的其他文章

#include<stdio.h>


int array(int, int, int);


int array(int n, int k, int sum)              //找出每一种排列方法

{

    int count = 0;

    if (n == 0 || k == 0)

    {

        return 1;

    }

    else

    {

        count += array(n-1, k, sum+1);

        if (sum != 0)

        {

            count += array(n, k-1, sum-1);

        }

    }

    return count;

}


int main()

{

    int m, n, k;

    int count;

    int num1 = 1, num2 = 1;

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

    

    if (n < k)                                          //若 一块 的人比 两块 少,直接输出 0

    {

        printf("0\n");

        return 0;

    }

    

    for (int i=n; i>0; i--)                         //相同零钱的不同小孩的排列可能

    {

        num1 *= i;

    }

    for (int i=k; i>0; i--)

    {

        num2 *= i;

    }

    

    count = num1 * num2 * array(n, k, 0);

    

    printf("%d\n", count);


    return 0;

}


 

0.0分

0 人评分

看不懂代码?想转换其他语言的代码? 或者想问其他问题? 试试问问AI编程助手,随时响应你的问题:

编程语言转换

万能编程问答  

代码解释器

代码纠错

SQL生成与解释

  评论区