本题比较抽象,参考了很多种答案与视频,现在将比较好的答案与视频放在下方供参考:

视频解析

def func(m, n):
    if m < 0 or n < 0:
        return 0
    elif m == 1 or n == 1:
        return 1
    else:
        return func(m, n-1) + func(m-n, n)
    
while True:
    try:
        m,n = map(int, input().split())
        if m < n:
            print(func(m, m))
        else:
            print(func(m, n))
    except:
        break