Untitled
unknown
plain_text
5 months ago
1.1 kB
2
Indexable
class Solution { class Pair { int node; int dis; Pair(int node, int dis) { this.node = node; this.dis = dis; } } public int minScore(int n, int[][] roads) { List<List<Pair>> adj = new ArrayList<>(); for (int i = 0; i <= n; i++) { adj.add(new ArrayList<>()); } for (int i = 0; i < roads.length; i++) { adj.get(roads[i][0]).add(new Pair(roads[i][1], roads[i][2])); adj.get(roads[i][1]).add(new Pair(roads[i][0], roads[i][2])); } boolean vis[] = new boolean[n + 1]; Arrays.fill(vis, false); return dfs(adj, 1, vis); // return ans; } int dfs(List<List<Pair>> adj, int src, boolean[] vis) { int ans = Integer.MAX_VALUE; vis[src] = true; for (Pair x : adj.get(src)) { if (vis[x.node] == true) continue; ans = Math.min(ans, x.dis); ans = Math.min(ans, dfs(adj, x.node, vis)); } return ans; } }
Editor is loading...
Leave a Comment