商品列表已按特定规则排序,每个商品包含三个信息:编号、价格、库存量,对应三元组 (id, price, stock)。现有预算 M 元,按排好的顺序依次购买,只要当前商品的价格不超过剩余预算并且尚有剩余就购买并扣款,否则立即停止。以下哪个选项是正确的?
budget = M
products.sort(key=lambda x: (x[1], x[2], x[0])) #按规则排序
bought = []
for item in products:
if ________: #此处需要填入适当的代码
budget -= item[1]
bought.append(item[0])
else:
break
budget > 0 and item[2] != 0
budget >= item[1] and item[2] != 0
budget > item[1] and item[2] > 0
budget <= item[1] and item[2] > 0