编程题
### 问题描述 小然在一次探险中,发现了一个由 $N$ 棵树组成的魔法森林。每棵树都有一个高度 $A_i$,以及一个可以调整的高度范围 $[L_i, R_i]$,满足 $L_i \leq A_i \leq R_i$。 在森林中,如果两棵树直接相连,那么它们就形成了一对。小然想通过魔法,调整一些树的高度,使得所有形成的树对中,高度差的绝对值的总和尽可能小。 你能帮助小然找到最小的总和吗? ### 输入格式 第一行包含一个整数 $N$,表示森林中树的数量。 接下来 $N$ 行,每行包含三个整数 $L_i$、$A_i$ 和 $R_i$,分别表示一棵树的最低高度、当前高度和最高高度。 接下来 $N-1$ 行,每行包含两个整数 $u_i$ 和 $v_i$,表示第 $u_i$ 棵树和第 $v_i$ 棵树直接相连。 ### 输出格式 对于每个测试用例,输出一行,包含一个整数,表示所有形成的树对中,高度差的绝对值的最小总和。 ### 样例输入 ```text 4 3 3 4 1 3 5 2 2 2 2 2 2 1 2 2 3 2 4 ``` ### 样例输出 ```text 1 ``` ### 说明 在测试用例中,我们可以将第二棵树的高度调整为 $2$,这样,所有形成的树对中,高度差的绝对值的总和为 $1$。 ### 评测数据范围 $3 \leq N \leq 10^5$,$1 \leq L_i \leq A_i \leq R_i \leq 10^9$,$1 \leq u_i, v_i \leq N$,且 $u_i \neq v_i$。 所有测试用例中,$N$ 的总和不超过 $2 \times 10^5$。
查看答案
赣ICP备20007335号-2