QOJ.ac

QOJ

Time Limit: 8 s Memory Limit: 2048 MB Total points: 100

#4815. Flower's Land

统计

花之国由 $n$ 个城市组成,第 $i$ 个城市种植了 $a_i$ 朵花。共有 $n-1$ 条道路,其中第 $i$ 条道路连接城市 $u_i$ 和 $v_i$。保证任意两个城市之间都有路径相连。

现在,花之国想要举办一场花卉展览。为此,你需要首先选择一个城市 $z$ 作为展览馆所在地,然后选择恰好 $k$ 个城市 $x_1, x_2, \dots, x_k$,并将这些城市的花运送到城市 $z$。

为了避免沿途城市居民的不满,组织者规定:如果选择了城市 $x$,那么从 $x$ 到 $z$ 路径上的所有城市也必须被选中。特别地,这意味着城市 $z$ 本身必须被选中。

对于每个 $z = 1, 2, \dots, n$,求出若选择城市 $z$ 作为展览馆所在地,所能运送的花朵数量的最大值。

输入格式

第一行包含两个整数 $n$ 和 $k$ ($1 \le n \le 40\,000, 1 \le k \le \min(n, 3000)$)。 下一行包含 $n$ 个整数 $a_1, a_2, \dots, a_n$ ($1 \le a_i \le 5 \cdot 10^5$)。 接下来的 $n-1$ 行,每行包含两个整数 $x$ 和 $y$ ($1 \le x, y \le n, x \neq y$),表示顶点 $x$ 和 $y$ 之间有一条边。保证给定的图是一棵树。

输出格式

输出一行,包含 $n$ 个整数 $f_1, f_2, \dots, f_n$,其中 $f_i$ 表示 $z = i$ 时的答案。

样例

输入 1

5 3
6 10 4 3 4
3 4
4 2
2 5
5 1

输出 1

20 20 17 17 20

输入 2

7 4
1 3 2 1 7 12 17
4 6
1 4
5 1
2 5
7 6
3 2

输出 2

31 13 13 31 21 31 31

Discussions

About Discussions

The discussion section is only for posting: General Discussions (problem-solving strategies, alternative approaches), and Off-topic conversations.

This is NOT for reporting issues! If you want to report bugs or errors, please use the Issues section below.

Open Discussions 0
No discussions in this category.

Issues

About Issues

If you find any issues with the problem (statement, scoring, time/memory limits, test cases, etc.), you may submit an issue here. A problem moderator will review your issue.

Guidelines:

  1. This is not a place to publish discussions, editorials, or requests to debug your code. Issues are only visible to you and problem moderators.
  2. Do not submit duplicated issues.
  3. Issues must be filed in English or Chinese only.
Active Issues 0
No issues in this category.
Closed/Resolved Issues 0
No issues in this category.