题解 | #放苹果#

放苹果

http://www.nowcoder.com/practice/bfd8234bb5e84be0b493656e390bdebf

#include <stdio.h>
#include <string.h>

//1.至少有一个空盘fm,n = fm,n-1
//2.一个空盘都没有fm,n = fm-n,n;
//m个果放1个盘子 1种
//0个果放n个盘子 1钟

int f(int m, int n);
 int main()
{
    int m, n;
     while (scanf("%d %d", &m, &n) != EOF)
    {
        printf("%d\n", f(m, n));
    }

    return 0;
}

int f(int m, int n)
{
    int ret;
    if (n == 1)
    {
        ret = 1;
    }
    else if (m == 0)
    {
        ret = 1;
    }
    else if (m < n)
    {
        ret = f(m,m);
    }
    else if (m >= n)
    {
        ret = f(m - n, n) + f(m, n - 1);
    }

    return ret;
}
全部评论

相关推荐

不愿透露姓名的神秘牛友
02-12 10:05
小米集团 算法工程师 28.0k*15.0
泡沫灬一触即破:楼上那个看来是看人拿高薪,自己又不如意搁这泄愤呢是吧,看你过往评论很难不怀疑你的精神状态
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务