题解 | #放苹果#

放苹果

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

HJ61 放苹果

思路:

看了下其他uu的分析,借用公式写的~
step1:创建函数,首先设置边界,如果m<0或者n<=0,返回错误;如果m==0并且n>=1,只有一种可能;如果n==1,也是只有一种可能;其他情况下,回调fn(m,n-1) + fn(m-n,n);
输入两个整型的数,且空格分开,输出打印执行函数的结果

代码如下:

def fn(m,n):
    if m < 0 or n <= 0:
        return False
    elif m == 0 and n >= 1:
        return 1
    elif n == 1:
        return 1
    else:
        return fn(m,n-1) + fn(m-n,n)

m,n = list(map(int,input().split()))
print(fn(m,n))
全部评论
有bug,当n>m时,如输入 3 7
点赞 回复 分享
发布于 2022-03-18 18:14

相关推荐

每晚夜里独自颤抖:要求太多的没必要理
点赞 评论 收藏
分享
不愿透露姓名的神秘牛友
07-09 13:05
TMD找工作本来就烦,这东西什么素质啊😡
Beeee0927:hr是超雄了,不过也是有道理的
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务