题解 | #放苹果#

放苹果

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

while True:
    try:
        m, n = list(map(int, input().split()))
        dp = [[0] * (n+1) for _ in range(m+1)]
        for i in range(m+1):
            dp[i][1] = 1 # 1个盘子
        for j in range(1, n+1):
            dp[0][j] = 1 # 0个苹果
        for i in range(1, m+1):
            for j in range(2, n+1):
                if i < j:
                    dp[i][j] = dp[i][i]
                else:
                    dp[i][j] = dp[i-j][j] + dp[i][j-1]
        print(dp[m][n])
    except:
        break
全部评论

相关推荐

不愿透露姓名的神秘牛友
06-29 17:30
点赞 评论 收藏
分享
评论
1
收藏
分享

创作者周榜

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