查詢 Python 中最多冰淇淋棒的程式
假設我們有一個包含 n 個元素的陣列成本,其中 costs[i] 是第 i 個冰淇淋棒的價格(以硬幣為單位)。我們最初有 c 個硬幣可花,並且我們希望儘可能多地購買冰淇淋棒。我們需要求出我們能用 c 個硬幣購買的最大冰淇淋棒數。
因此,如果輸入為成本 = [3,1,4,5,2],c = 10,則輸出將為 4,因為我們可以在索引 0、1、2、4 處購買冰淇淋棒,總價格為 3 + 1 + 4 + 2 = 10。
為解決此問題,我們將執行以下步驟:
對列表成本排序
i:= 0
只要 i < 成本的規模並且 c >= 成本[i],則執行
c := c - 成本[i]
i := i+1
返回 i
示例
讓我們看看下面的實現,以更好地理解:
def solve(costs, c):
costs.sort()
i=0
while(i<len(costs) and c >= costs[i]):
c = c-costs[i]
i=i+1
return i
costs = [3,1,4,5,2]
c = 10
print(solve(costs, c))輸入
[3,1,4,5,2], 10
輸出
4
廣告
資料結構
網路
RDBMS
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP