deno.land / x / masx200_leetcode_test@10.6.5 / minimum-number-of-refueling-stops / index.ts

نووسراو ببینە
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
import { PriorityQueue } from "../kth-largest-element-in-a-stream/PriorityQueue.ts";
function minRefuelStops( target: number, startFuel: number, stations: number[][],): number { const pq = PriorityQueue<number>((a, b) => b - a);
let ans = 0; let fuel = startFuel; let prev = 0; const n = stations.length; for (let i = 0; i <= n; i++) { const curr = i < n ? stations[i][0] : target; fuel -= curr - prev; while (fuel < 0 && !pq.isEmpty()) { fuel += pq.head() ?? 0; pq.shift(); ans++; } if (fuel < 0) { return -1; } if (i < n) { pq.offer(stations[i][1]);
prev = curr; } } return ans;}export default minRefuelStops;
masx200_leetcode_test

Version Info

Tagged at
a year ago