Skip to content

Commit 29c74c9

Browse files
committed
feat: lemonade-change
1 parent e6defbc commit 29c74c9

File tree

1 file changed

+42
-0
lines changed

1 file changed

+42
-0
lines changed

greedy.lemonade-change.py

+42
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,42 @@
1+
from typing import List
2+
3+
4+
class Solution:
5+
"""
6+
860. 柠檬水找零
7+
https://leetcode-cn.com/problems/lemonade-change/description/
8+
在柠檬水摊上,每一杯柠檬水的售价为 5 美元。
9+
顾客排队购买你的产品,(按账单 bills 支付的顺序)一次购买一杯。
10+
每位顾客只买一杯柠檬水,然后向你付 5 美元、10 美元或 20 美元。你必须给每个顾客正确找零,也就是说净交易是每位顾客向你支付 5 美元。
11+
注意,一开始你手头没有任何零钱。
12+
如果你能给每位顾客正确找零,返回 true ,否则返回 false 。
13+
"""
14+
def lemonadeChange(self, bills: List[int]) -> bool:
15+
ten = 0
16+
five = 0
17+
18+
for i in bills:
19+
if i == 5:
20+
five += 1
21+
elif i == 10:
22+
ten += 1
23+
five -= 1
24+
elif ten > 0 and five > 0:
25+
ten -= 1
26+
five -= 1
27+
else:
28+
five -= 3
29+
30+
if five < 0:
31+
return False
32+
33+
return True
34+
35+
36+
so = Solution()
37+
print(so.lemonadeChange([5, 5, 5, 10, 20]))
38+
print(so.lemonadeChange([5, 5, 10]))
39+
print(so.lemonadeChange([10, 10]))
40+
print(so.lemonadeChange([5,5,10,10,20]))
41+
42+

0 commit comments

Comments
 (0)