AT_abc416_f [ABC416F] Paint Tree 2
题目描述
给定一棵有 $N$ 个顶点的树 $T$,顶点编号为 $1$ 到 $N$,以及一个整数 $K$。第 $i$ 条边 $(1 \leq i \leq N-1)$ 连接顶点 $U_i$ 和顶点 $V_i$。此外,每个顶点 $i$ $(1 \leq i \leq N)$ 上写有一个整数 $A_i$。初始时,所有顶点都被涂成白色。
你可以进行 $0$ 次或多次、最多 $K$ 次如下操作:
- 选择树 $T$ 上一条路径,要求该路径上的所有顶点当前都是白色。然后,将该路径上的所有顶点涂成黑色。
操作结束后,请求所有被涂成黑色的顶点上所写整数之和的最大可能值。
输入格式
输入以如下格式从标准输入给出。
> $N$ $K$
> $A_1$ $A_2$ $\ldots$ $A_N$
> $U_1$ $V_1$
> $U_2$ $V_2$
> $\vdots$
> $U_{N-1}$ $V_{N-1}$
输出格式
输出答案。
说明/提示
## 限制条件
- $2 \leq N \leq 2 \times 10^5$
- $1 \leq K \leq 5$
- $1 \leq A_i \leq 10^9$
- $1 \leq U_i < V_i \leq N$
- 给定的图是一棵树
- 输入的所有值均为整数
## 样例解释 1
如果选择以顶点 $3,4$ 为端点的路径,则可以将顶点 $1,3,4$ 涂成黑色。这种情况下,被涂成黑色的顶点上整数之和为 $1+4+8=13$。无法使被涂成黑色的顶点上整数之和超过 $13$,因此输出 $13$。
## 样例解释 2
例如,可以通过如下操作使被涂成黑色的顶点上整数之和为 $27$:
- 选择以顶点 $4,5$ 为端点的路径,将顶点 $2,4,5$ 涂成黑色。
- 选择以顶点 $6,7$ 为端点的路径,将顶点 $3,6,7$ 涂成黑色。
无法使被涂成黑色的顶点上整数之和超过 $27$,因此输出 $27$。
由 ChatGPT 4.1 翻译