There are n cities labelled 0 to n - 1 and a list of flights, each [from, to, price]. Return the cheapest price from src to dst using at most k stops, or -1 if no such route exists.
- 'At most
k stops' means at most k + 1 flights — the intermediate cities are the stops - Plain Dijkstra is wrong here: the cheapest way to reach a city may use too many flights, and a pricier route with fewer flights can still win
src === dst costs 0- A compact
MinHeap keyed on item[0] is already written for you in the starter — spend your effort on the algorithm