Untitled

 avatar
unknown
plain_text
2 years ago
1.3 kB
6
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/placementlelo
Editor is loading...