背包问题递归解法

2024-09-30 06:11:44 发布

您现在位置:Python中文网/ 问答频道 /正文

我一直在尝试编写一个代码来解决背包问题,但方法不同。输出不仅是最大值, 输出必须是元组:(最大值,剩余权重) 剩余重量-我指的是在我们达到之前确定的最大重量下的最大值后剩下的重量

我收到一个花的列表,我需要返回一个元组(最大美学价值,剩余预算)

def KnapSackFlowersRecursive_function(flowers, budget)
flowers1 = [
    # flower_name , aesthetic_value, cost
    ("Lilac", 4, 3),
    ("Hibiscus", 2, 5),
    ("Tulip", 1, 1),
    ("SunFlower",5,2),
    ("Rose",3,4)
]

print(KnapSackFlowersRecursive_function(flowers1, 4)
 
Output 
(6,1)

我不允许使用任何循环, 不允许Im使用任何最小/最大功能。 我必须在这个解决方案中使用递归函数

你对如何解决这个问题有什么建议或想法吗


Tags: 方法代码列表deffunction权重元组背包

热门问题