6183: [GESP202412 八级] 树上移动

内存限制:256 MB 时间限制:2 S
题面:传统 评测方式:文本比较 上传者:
提交:2 通过:2

题目描述

小杨有一棵包含 $n$ 个节点的树,其中节点的编号从 $1$ 到 $n$,每个节点的颜色要么是白色要么是黑色,小杨可以任意选择节点 $s$ 和节点 $t$ 并从节点 $s$ 出发移动到节点 $t$,移动过程中小杨不能够经过重复节点。

小杨希望自己在至多经过 $k$ 个黑色节点的前提下,经过的总节点数尽可能多,请你帮小杨选择经过最多的节点数是多少

输入格式

第一行包含两个正整数 $n,k$,代表节点数量和至多经过的黑色节点数。

第二行包含 $n$ 个正整数 $a_1,a_2,\dots,a_n$,代表节点颜色,如果 $a_i=0$,代表节点颜色为白色,如果 $a_i=1$,代表节点颜色为黑色。

之后 $n-1$ 行,每行包含两个正整数 $u_i,v_i$,代表存在一条连接 $u_i$ 和 $v_i$ 的边。

输出格式

输出一个正整数,代表最多经过的节点数。

输入样例 复制

5 1
0 0 1 1 1
1 2
2 3
2 5
1 4

输出样例 复制

3

数据范围与提示

| 子任务编号 | 数据点占比 |     $n$     | $k$         |     特殊性质     |
| :--------: | :--------: | :---------: | ----------- | :--------------: |
|    $1$     |   $20\%$   | $\leq 100$  | $\leq 100$  | 树的形态为一条链 |
|    $2$     |   $20\%$   | $\leq 1000$ | $0$         |                  |
|    $3$     |   $60\%$   | $\leq 1000$ | $\leq 1000$ |                  |


对于全部数据,保证有 $1\leq n\leq 1000$,$0\leq k\leq 1000$,$0\leq a_i\leq 1$。