假设我们有一个待售汽车的价格列表,并且还有一个预算k,我们必须找到可以购买的最大汽车数量。
因此,如果输入为[80,20,10,30,80],k = 85,则输出将为3,因为我们可以以价格20、10、40购买三辆汽车
为了解决这个问题,我们将遵循以下步骤-计数:= 0
排序列表价格
对于价格范围为0的i,从循环中出来
k:= k-价格[i]
数:=数+ 1
如果价格[i] <= k,则
除此以外,
返回计数
让我们看下面的实现以更好地理解-
示例class Solution:
def solve(self, prices, k):
count =0
prices.sort()
for i in range(len(prices)):
if(prices[i]<=k):
k = k-prices[i]
count += 1
else:
break
return count
ob = Solution()p = [80, 20, 10, 30, 80]
print(ob.solve(p, 85))
输入值[80, 20, 10, 30, 80], 85
输出结果3