P12343 [蓝桥杯 2025 省 AB/Python B 第二场] 树上寻宝
题目描述
小蓝正在一棵含有 $n$ 个结点的树的根结点 $1$ 上,他准备在这棵树上寻宝。结点 $i$ 上有一个物品,价值为 $w_i$。然而,小蓝每次寻宝只能从根节点出发走不超过 $k$ 步,每步只能选择走 $1$ 条边或者 $2$ 条边,之后会自动拾取最终停留的结点上的物品并被传送回根结点。请求出小蓝最终能获得的物品的总价值。
输入格式
输入的第一行包含两个正整数 $n, k$,用一个空格分隔。
第二行包含 $n$ 个正整数 $w_1, w_2, \cdots, w_n$,相邻整数之间使用一个空格分隔。
接下来 $n-1$ 行,每行包含两个正整数 $u_i, v_i$,用一个空格分隔,表示结点 $u_i$ 和结点 $v_i$ 之间有一条边。
输出格式
输出一行包含一个整数表示答案。
说明/提示
### 样例说明
- 走 $0$ 步能到的结点:$1$;
- 走 $1$ 步能到的结点:$2, 3, 4$;
- 走 $2$ 步能到的结点:$3, 4, 5, 6$;
因此能到的结点为:$1, 2, 3, 4, 5, 6$,能获得的总价值为 $22$。
### 评测用例规模与约定
- 对于 $20\%$ 的评测用例,$1 \leq n \leq 15$;
- 对于所有评测用例,$0 \leq k < n \leq 10^5$,$1 \leq w_i \leq 10^6$,$1 \leq u_i, v_i \leq n$。