程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式師世界 >> 編程語言 >  >> 更多編程語言 >> Python

【Leetcode刷題Python】 860.檸檬水找零

編輯:Python

1 題目

在檸檬水攤上,每一杯檸檬水的售價為 5 美元。顧客排隊購買你的產品,(按賬單 bills 支付的順序)一次購買一杯。

每位顧客只買一杯檸檬水,然後向你付 5 美元、10 美元或 20 美元。

你必須給每個顧客正確找零,也就是說淨交易是每位顧客向你支付 5 美元。

注意,一開始你手頭沒有任何零錢。

給你一個整數數組 bills ,其中 bills[i] 是第 i 位顧客付的賬。如果你能給每位顧客正確找零,返回 true ,否則返回 false 。

2 解析

(1)先計算找零的錢change
(2)先找零10塊的,直到沒有10塊錢,再找5塊的
(3)最後把收到的錢,記個數

3 Python實現

def lemonadeChange(self, bills: List[int]) -> bool:
twity,ten,five = 0,0,0
for i in range(len(bills)):
change = bills[i]-5
while(change>=10 and ten>0) :
change -=10
ten -=1
while(change>=5 and five>0) :
change -=5
five -=1
if change>0:return False
if bills[i]==20: twity+=1
elif bills[i]==10:ten+=1
else: five +=1
return True

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式師世界 All Rights Reserved