2866: 小明的树学题

内存限制:256 MB 时间限制:1.000 S
评测方式:文本比较 命题人:
提交:0 解决:0

题目描述

相信我,这是一道你能写的题目,就像相信这是一道树学题一样。

很久很久以前,小明是古希腊掌管果树的神,但是小明的定位是战士,这意味着小明的法力值很低,每个星期只能使用一次魔法。小明掌管的是一棵参天大树,树的根节点为 $1$ 号节点,树上的结点生长着果子,每个果子都有一个甜度 $a_i$,表示着第 $i$ 个结点上果子的甜度为 $a_i$。因此小明战士的特长并不能得到发挥,想吃树上的果子就只能使用魔法砍树。使用一次魔法可以选择一个结点,小明将从这个结点开始切割,小明将会得到这个结点的子树上(包括这个结点)所有果子的甜度。但是受限于小明匮乏的魔力值,每次小明只能得到在这个子树上距离选择的结点小于等于 $k$ 的果子的甜度。现在小明想知道选择一个结点 $i$ 使用魔法,得到的总甜度是多少,你能帮帮他嘛?

输入

第一行输入两个整数,分别为 $n,k (1 \leq k,n \leq 2 \times 10^5)$。

第二行输入 $n$ 个整数,第 $i$ 个整数代表第 $i$ 个结点上果子的甜度为 $a_i (1 \leq a_i \leq 10^9)$。

下面 $n−1$ 行,每行两个整数 $u,v$,表示 $u,v$ 之间有一条边。

输出

输出 $n$ 个整数,第 $i$ 个整数代表如果在第 $i$ 个节点上施展魔法小明可以得到的总甜度。

样例输入 复制

4 2
5 10 9 9
3 2
3 4
1 3

样例输出 复制

33 10 28 9