#L4797. RMI 2021」Paths

RMI 2021」Paths

题目描述
题目译自 Romanian Master of Informatics 20212021 Day22 T22 「Paths」

橘猫找到了一个有 NN 个顶点(编号从 11NN)的树。在连接顶点 xix_{i}yiy_{i} 的每条边 ii (1i<N)(1 \leq i<N) 上,都有 cic_{i} 个特殊的猫零食。

橘猫可以选择恰好 KK 个顶点,从树的根节点走到每个选择的顶点,沿着从根节点到相应顶点的路径,并沿途取走所有的猫零食。当然,他只能在每条边上取一次零食。因为橘猫是一只好奇的猫,他想知道对于 11NN 的每个 ii,如果根节点是顶点 ii,他通过优化选择 KK 个顶点可以获得的最大可能的零食数量。


输入格式
输入的第一行包含两个整数 NNKK,分别是树的顶点数和橘猫将选择的顶点数。接下来的 N1N-1 行,每行包含三个整数 xix_{i}yiy_{i}cic_{i},描述树的边。


输出格式
输出 NN 行,第 ii 行输出如果树的根节点是顶点 ii,橘猫可以获得的最大零食数量。


样例

输入

11 3
1 2 5
2 3 3
2 6 5
3 4 4
3 5 2
1 7 6
7 8 4
7 9 5
1 10 1
10 11 1

输出

28
28
28
32
30
32
28
32
32
29
30

如果根节点是顶点 11,那么橘猫可以选择顶点 4,6,94,6,9。从根节点到所选顶点的路径是 12341\to 2\to 3\to 4, 1261\to 2\to 6, 1791\to 7\to 9,沿这些路径的零食数量是 5+3+4+5+6+5=285+3+4+5+6+5=28。请注意,边 121\to 2 上的零食只计算一次。


数据范围与提示
对于所有输入数据,满足:

  • 1KN1051 \leq K \leq N \leq 10^5
  • 0ci1090 \leq c_{i} \leq 10^9 (1i<N)(1 \leq i<N)

详细子任务附加限制及分值如下表所示。

子任务 分值 附加限制
11 88 N18N \leq 18
22 1111 N200N \leq 200, K20K \leq 20
33 1717 N1000N \leq 1000, K100K \leq 100
44 2020 N2000N \leq 2000
55 1212 K=1K=1
66 3232 无附加限制