Minimum Score of a Path Between Two Cities - Problem
You are given a positive integer n representing n cities numbered from 1 to n. You are also given a 2D array roads where roads[i] = [ai, bi, distancei] indicates that there is a bidirectional road between cities ai and bi with a distance equal to distancei. The cities graph is not necessarily connected.
The score of a path between two cities is defined as the minimum distance of a road in this path.
Return the minimum possible score of a path between cities 1 and n.
Note:
- A path is a sequence of roads between two cities.
- It is allowed for a path to contain the same road multiple times, and you can visit cities
1andnmultiple times along the path. - The test cases are generated such that there is at least one path between
1andn.
Input & Output
Example 1 — Basic Path
$
Input:
n = 4, roads = [[1,2,9],[2,3,6],[2,4,5],[1,4,7]]
›
Output:
5
💡 Note:
The path from city 1 to 4: 1 → 4 has minimum road distance 7. But we can go 1 → 2 → 4 with minimum road distance min(9,5) = 5, which is better.
Example 2 — Direct Connection
$
Input:
n = 4, roads = [[1,2,2],[1,3,4],[3,4,7]]
›
Output:
2
💡 Note:
Path 1 → 2 → 1 → 3 → 4 uses roads with distances [2,2,4,7], minimum is 2.
Constraints
- 2 ≤ n ≤ 105
- 1 ≤ roads.length ≤ 105
- roads[i].length == 3
- 1 ≤ ai, bi ≤ n
- ai ≠ bi
- 1 ≤ distancei ≤ 104
Visualization
Tap to expand
Understanding the Visualization
1
Input Graph
Cities connected by bidirectional roads with distances
2
Find Connected Component
Explore all roads reachable from city 1
3
Return Minimum
The minimum edge weight in the connected component
Key Takeaway
🎯 Key Insight: Since roads can be reused, we just need the minimum edge in the connected component containing both cities
💡
Explanation
AI Ready
💡 Suggestion
Tab
to accept
Esc
to dismiss
// Output will appear here after running code