U177074 [JDWOI 1] 舞会

题目背景

小 K 和小 M 准备办一场舞会。

题目描述

他们想邀请 $n$ 个人,这 $n$ 个人中有 $(n-1)$ 个相互认识的关系,构成一棵关系树。 对于第 $i$ 个人,他对舞会的**享受值**为 $a_i$。但他们都很奇怪,他们希望,在舞会上见到的人中,最多只有 $1$ 个是自己认识的,否则舞会就无法正常进行下去。 小 K 又发现,在舞会上,每个人都要与余下的所有人跳一支舞。如果一个人的舞伴是自己认识的,那么整个舞会的**厌倦值**会增加 $b$。 小 M 又把整个舞会的**愉悦值**规定为邀请到舞会人的享受值之和,减去舞会的厌倦值。小 K 和小 M 为了使舞会的愉悦值最大,必须选择邀请哪些人到舞会。请帮他们求出舞会最大的愉悦值。当然愉悦值是负数时也会让小 K 和小 M 不开心,所以必要时也可以一个人都不邀请。

输入格式

第一行两个整数 $n,b$,表示想邀请的人数和每组认识的舞伴产生的厌倦值。 第二行 $n$ 个整数 $a_1,a_2\dots a_n$,表示每个人的享受值。 接下来 $(n-1)$ 行每行两个整数 $x,y$,表示 $x$ 和 $y$ 互相认识。保证 $1\le x,y\le n$,且关系构成一棵树。

输出格式

一行一个整数,表示最大的愉悦值。

说明/提示

**【样例解释】** **对于样例#1**,选择 $3$ 和 $4$,愉悦值为 $3+4=7$。 **对于样例#2**,选择 $2,5,7,8,10,11$,其中 $(2,5)(10,11)$ 互相认识,愉悦值为 $5+4+5+4+5+3-3-3=20$。 **【数据范围】** **对于 $20\%$ 的数据**,$1\le n \le 10$; **对于 $40\%$ 的数据**,$1\le n \le 2\times 10^3$; **对于另外 $10\%$ 的数据**,关系树为一条链; **对于另外 $10\%$ 的数据**,$\sum a_i\le b$; **对于所有的数据**,$1\le n \le 10^5,1\le a_i,b\le 10^9$。