Untitled
unknown
plain_text
3 years ago
1.3 kB
11
Indexable
Minimize Travel Tax
Java
https://telegram.me/placementlelo
import java.util.*;
public class Solution {
public int minimizeTravelTax(int A, int[][] B, int[][] C, int[] D) {
https://telegram.me/placementlelo
List<Integer>[] adj = new List[A+1];
for (int i = 1; i <= A; i++) {
adj[i] = new ArrayList<>();
}
for (int i = 0; i < B.length; i++) {
int u = B[i][0];
int v = B[i][1];
adj[u].add(v);
adj[v].add(u);
}
https://telegram.me/placementlelo
int[] dp1 = new int[A+1];
int[] dp2 = new int[A+1];
dfs(1, 0, adj, D, dp1, dp2);
https://telegram.me/placementlelo
int ans = 0;
for (int i = 0; i < C.length; i++) {
int s = C[i][0];
int t = C[i][1];
int lca = findLca(s, t, adj);
int tax = dp1[s] + dp1[t] - 2 * dp1[lca];
if (D[lca] % 2 == 0) {
tax -= dp2[lca];
}
ans += tax;
}
Minimize Travel Tax
Java
https://telegram.me/placementleloEditor is loading...