Run ID 作者 问题 语言 测评结果 时间 内存 代码长度 提交时间
49573 Koddo 装箱问题 Python3 解答错误 1484 MS 3700 KB 683 2024-07-18 13:05:19

Tests(0/5):


def fill(lst, room): if not lst: # 物品取完 return 0 if not room: # 没有空间 return 0 not_take = fill(lst[1:], room) # 不放入当前物品 take = 0 if room >= lst[0]: # 空间够放 take = lst[0] + fill(lst[1:], room - lst[0]) # 放入当前物品 return max(not_take, take) # 返回两者中的最大值 v = int(input('请输入容器的容量:')) n = int(input('请输入物品数量:')) lst = [] for i in range(n): lst.append(int(input('请输入物品重量:'))) lst.sort(reverse=True) # 将物品按照重量降序排序,以便优先考虑放入重的物品 print(fill(lst, v))