AT_nikkei2019_2_final_g Road Trip
题目描述
有一棵包含 $N$ 个顶点的无向树,顶点编号为 $1$ 到 $N$,边编号为 $1$ 到 $N-1$。第 $i$ 条边连接顶点 $A_i$ 和顶点 $B_i$,权值为 $C_i$。请注意,权值 $C_i$ 可能为负数。
我们将这棵树的连通子图称为“驾驶子树”,特别地,包含顶点 $u$ 和顶点 $v$ 的驾驶子树称为“$u-v$ 驾驶子树”。某个驾驶子树所包含的所有边的权值之和,称为该驾驶子树的“乐趣值”。
给定 $Q$ 个整数对 $(U_i, V_i)$,对于每个 $i$,请回答以下问题:
- $U_i-V_i$ 驾驶子树的乐趣值可能取得的最大值是多少。
输入格式
输入以如下格式从标准输入读入。
> $N$ $A_1$ $B_1$ $C_1$ : $A_{N-1}$ $B_{N-1}$ $C_{N-1}$ $Q$ $U_1$ $V_1$ : $U_Q$ $V_Q$
输出格式
请输出 $Q$ 行,第 $i$ 行输出 $U_i-V_i$ 驾驶子树的乐趣值可能取得的最大值。
说明/提示
## 限制条件
- $2 \leq N \leq 2 \times 10^5$
- $1 \leq A_i < B_i \leq N\ (1 \leq i \leq N-1)$
- 给定的图构成一棵树
- $-10^9 \leq C_i \leq 10^9\ (1 \leq i \leq N-1)$
- $1 \leq Q \leq 2 \times 10^5$
- $1 \leq U_i < V_i \leq N\ (1 \leq i \leq Q)$
- 所有输入均为整数
## 样例解释 1
- 对于第 $1$ 个询问,选择由顶点 $2, 3, 4$ 构成的子图作为驾驶子树时,乐趣值为 $20+(-1)$,这是 $2-3$ 驾驶子树乐趣值的最大值。
- 对于第 $2$ 个和第 $3$ 个询问,选择由顶点 $1, 2, 3, 5, 6, 7$ 构成的子图作为驾驶子树时,乐趣值为 $(-10)+20+1+3+2$,在这两个询问中这都是最大值。
由 ChatGPT 4.1 翻译