其他分享
首页 > 其他分享> > 牛客华为机试HJ61

牛客华为机试HJ61

作者:互联网

原题传送门

1. 问题描述

2. Solution

import sys

"""
放苹果分为两种情况,一种是有盘子为空,一种是每个盘子均均不空
设f(m, n) 为求解函数
case 1: 若有一个盘子为空,则问题转换为f(m, n-1) 将m个苹果放到 n-1个盘子中
case 2: 若每个盘子均不空,则在每个盘子上都先放1个苹果,问题转换为f(m - n, n) 将m-n个苹果放到n个盘子上
"""


def solve(m, n):
    if m < 0 or n < 0:
        return 0
    elif m == 1 or n == 1:
        return 1
    else:
        return solve(m, n - 1) + solve(m - n, n)


for line in sys.stdin:
    m, n = map(int, line.strip())
    res = solve(m, n)
    print(res)

标签:return,牛客,solve,HJ61,机试,盘子,不空,line,苹果
来源: https://www.cnblogs.com/junstat/p/16172589.html