Could you tell us how to get from route A to route B, and how you would optimize the best path?
Implement the solution for a directed, weighted graph whose edge weights are nonnegative. Return the minimum-cost path and its total cost from start to end. If no route exists, return an empty path and None.
Function signature: find_best_route(graph, start, end)
graph maps each node to a list of [neighbor, cost] pairs. The result must be a dictionary with path and cost keys.
def find_best_route(graph, start, end):