306974: CF1280D. Miss Punyverse
Memory Limit:512 MB
Time Limit:4 S
Judge Style:Text Compare
Creator:
Submit:0
Solved:0
Description
Miss Punyverse
题意翻译
给定一棵$n$个节点的树,每个点有点权$b_i$和$w_i$,请将这棵树划分为$m$个连通块,使得满足以下条件的连通块个数最大化: - 连通块内点的$w$之和**严格大于**连通块内点的$b$之和 ## 输入 第一行一个数$t(1 \leq t \leq 100)$,表示数据组数。对于每组数据: 第一行两个正整数$n$和$m(1 \leq m \leq n\leq 3000)$, 第二行$n$个整数$b_1 \dots b_n(0\leq b_i \leq 10^9)$, 第三行$n$个整数$w_1 \dots w_n(0\leq w_i \leq 10^9)$, 接下来$n-1$行,每行两个数$x,y(1 \leq x,y \leq n,x \neq y)$, 表示树边。 保证每个输入文件中$n$的和不超过$10^5$。 ## 输出 对于每组数据输出一行一个整数,表示所求连通块数的最大值。题目描述
The Oak has $ n $ nesting places, numbered with integers from $ 1 $ to $ n $ . Nesting place $ i $ is home to $ b_i $ bees and $ w_i $ wasps. Some nesting places are connected by branches. We call two nesting places adjacent if there exists a branch between them. A simple path from nesting place $ x $ to $ y $ is given by a sequence $ s_0, \ldots, s_p $ of distinct nesting places, where $ p $ is a non-negative integer, $ s_0 = x $ , $ s_p = y $ , and $ s_{i-1} $ and $ s_{i} $ are adjacent for each $ i = 1, \ldots, p $ . The branches of The Oak are set up in such a way that for any two pairs of nesting places $ x $ and $ y $ , there exists a unique simple path from $ x $ to $ y $ . Because of this, biologists and computer scientists agree that The Oak is in fact, a tree. A village is a nonempty set $ V $ of nesting places such that for any two $ x $ and $ y $ in $ V $ , there exists a simple path from $ x $ to $ y $ whose intermediate nesting places all lie in $ V $ . A set of villages $ \cal P $ is called a partition if each of the $ n $ nesting places is contained in exactly one of the villages in $ \cal P $ . In other words, no two villages in $ \cal P $ share any common nesting place, and altogether, they contain all $ n $ nesting places. The Oak holds its annual Miss Punyverse beauty pageant. The two contestants this year are Ugly Wasp and Pretty Bee. The winner of the beauty pageant is determined by voting, which we will now explain. Suppose $ \mathcal{P} $ is a partition of the nesting places into $ m $ villages $ V_1, \ldots, V_m $ . There is a local election in each village. Each of the insects in this village vote for their favorite contestant. If there are strictly more votes for Ugly Wasp than Pretty Bee, then Ugly Wasp is said to win in that village. Otherwise, Pretty Bee wins. Whoever wins in the most number of villages wins. As it always goes with these pageants, bees always vote for the bee (which is Pretty Bee this year) and wasps always vote for the wasp (which is Ugly Wasp this year). Unlike their general elections, no one abstains from voting for Miss Punyverse as everyone takes it very seriously. Mayor Waspacito, and his assistant Alexwasp, wants Ugly Wasp to win. He has the power to choose how to partition The Oak into exactly $ m $ villages. If he chooses the partition optimally, determine the maximum number of villages in which Ugly Wasp wins.输入输出格式
输入格式
The first line of input contains a single integer $ t $ ( $ 1 \le t \le 100 $ ) denoting the number of test cases. The next lines contain descriptions of the test cases. The first line of each test case contains two space-separated integers $ n $ and $ m $ ( $ 1 \le m \le n \le 3000 $ ). The second line contains $ n $ space-separated integers $ b_1, b_2, \ldots, b_n $ ( $ 0 \le b_i \le 10^9 $ ). The third line contains $ n $ space-separated integers $ w_1, w_2, \ldots, w_n $ ( $ 0 \le w_i \le 10^9 $ ). The next $ n - 1 $ lines describe the pairs of adjacent nesting places. In particular, the $ i $ -th of them contains two space-separated integers $ x_i $ and $ y_i $ ( $ 1 \le x_i, y_i \le n $ , $ x_i \neq y_i $ ) denoting the numbers of two adjacent nesting places. It is guaranteed that these pairs form a tree. It is guaranteed that the sum of $ n $ in a single file is at most $ 10^5 $ .
输出格式
For each test case, output a single line containing a single integer denoting the maximum number of villages in which Ugly Wasp wins, among all partitions of The Oak into $ m $ villages.
输入输出样例
输入样例 #1
2
4 3
10 160 70 50
70 111 111 0
1 2
2 3
3 4
2 1
143 420
214 349
2 1
输出样例 #1
2
0