一棵树n个点,n-1条边,经过每条边都要花费一定的时间,任意两点是联通的。
有K个人(分布在不同的K的点)要集中到一个点举行聚会。
聚会结束后需要有一辆车从举行聚会的这点出发,分别把K个人送回家。
输入格式:
第一行两个整数n,K。
接下来n-1行,每行三个整数x,y,z表示x到y之间有一条需要花费时间为z的边。
接下来K行,每行一个整数,表示K个人的分布。
数据范围:K<=n<=5e5
1<=x,y<=n,1<=z<=1e8
输出格式
输出n行
第i行的数表示:如果在节点i举行聚会,司机需要的最小时间。
样例
in1:
7 2
1 2 4
1 3 1
2 5 1
2 4 2
4 7 3
4 6 2
3
7
out1:
11
15
10
13
16
15
10
in2:
5 2
2 5 1
2 4 1
1 2 2
1 3 2
4
5
out2
5
3
7
2
2