Skip to content

Commit f0fe6e5

Browse files
authored
Create 983-minimum-cost-for-tickets.js
1 parent 78b0f1a commit f0fe6e5

File tree

1 file changed

+17
-0
lines changed

1 file changed

+17
-0
lines changed

983-minimum-cost-for-tickets.js

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
/**
2+
* @param {number[]} days
3+
* @param {number[]} costs
4+
* @return {number}
5+
*/
6+
const mincostTickets = function(days, costs) {
7+
const last7 = [], last30 = []
8+
let res = 0
9+
for(let d of days) {
10+
while(last7.length && last7[0][0] + 7 <= d) last7.pop()
11+
while(last30.length && last30[0][0] + 30 <= d) last30.pop()
12+
last7.push([d, res + costs[1]])
13+
last30.push([d, res + costs[2]])
14+
res = Math.min(res + costs[0], last7[0][1], last30[0][1])
15+
}
16+
return res
17+
};

0 commit comments

Comments
 (0)