Minimum Cost For Tickets LeetCode solution in Python

1
class Solution:
2
def mincostTickets(self, days: List[int], costs: List[int]) -> int:
3
cost = 0
4
last7 = deque()
5
last30 = deque()
6
for day in days:
7
while last7 and last7[0][0] + 7 <= day:
8
last7.popleft()
9
while last30 and last30[0][0] + 30 <= day:
10
last30.popleft()
11
last7.append((day, cost + costs[1]))
12
last30.append((day, cost + costs[2]))
13
cost = min(cost + costs[0], last7[0][1], last30[0][1])
14
return cost

0

WPM •0 •0

100%

ACC •0 •0

0s

TIME •0