题解 | #百钱买百鸡问题#

百钱买百鸡问题

https://www.nowcoder.com/practice/74c493f094304ea2bda37d0dc40dc85b

_ = input().strip()

def find(money: int, num: int):
    res = []
    for i in range(num, -1, -3):
        temp_res = [i]
        remain_money1 = 100 - i // 3
        remain_nums1 = 100 - i
        for j in range(remain_nums1, -1, -1):
            remain_nums2 = remain_nums1 - j
            if j * 3 == remain_money1:
                temp_res.insert(0, j)
                temp_res.insert(0, 0)
                res.append(temp_res)
                break
            elif j * 3 > remain_money1:
                break
            else:
                if remain_nums2 * 5 + j * 3 == remain_money1:
                    temp_res.insert(0, j)
                    temp_res.insert(0, remain_nums2)
                    res.append(temp_res)
                    break                
    return res

res = find(100, 84)

for r in res[-1::-1]:
    for i in r:
        print(i, end=' ')
    print()

全部评论

相关推荐

2025-12-19 21:53
门头沟学院 Java
想做OpenGL:不要一来就把自己定位这么低吧,把大厂当成目标,不断去学技术做项目,最后你至少能学到能找到中小厂的技术水平,你一上来就找这种两千块还要前后端都会的,其实对你用处不会很大,真去了也是打杂
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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