#P1338. 景区导游

    ID: 339 传统题 3000ms 320MiB 尝试: 0 已通过: 0 难度: (无) 上传者: 标签>普及+/提高暴力枚举树论最近公共祖先(LCA)

景区导游

景区导游

题目描述

某景区一共有 NN 个景点,编号 11NN。景点之间共有 N1N − 1 条双向的摆渡车线路相连,形成一棵树状结构。在景点之间往返只能通过这些摆渡车进行,需要花费一定的时间。 小明是这个景区的资深导游,他每天都要按固定顺序带客人游览其中 KK 个景点:A1,A2,...,AKA_1, A_2, . . . , A_K。今天由于时间原因,小明决定跳过其中一个景点,只带游客按顺序游览其中 K1K − 1 个景点。具体来说,如果小明选择跳过 AiA_i,那么他会按顺序带游客游览 A1,A2,...,Ai1,Ai+1,...,AK,A_1, A_2, . . . , A_{i−1}, A_{i+1}, . . . , A_K, (1iK)(1 ≤ i ≤ K)。 请你对任意一个 AiA_i,计算如果跳过这个景点,小明需要花费多少时间在景点之间的摆渡车上?

输入格式

第一行包含 22 个整数 NNKK。 以下 N1N − 1 行,每行包含 33 个整数 u,vu, vtt,代表景点 uuvv 之间有摆渡车线路,花费 tt 个单位时间。 最后一行包含 KK 个整数 A1,A2,...,AKA_1, A_2, . . . , A_K 代表原定游览线路。

输出格式

输出 KK 个整数,其中第 ii 个代表跳过 AiA_i 之后,花费在摆渡车上的时间。

样例 #1

样例输入 #1

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

样例输出 #1

10 7 13 14

提示

原路线是 26512 → 6 → 5 → 1。 当跳过 22 时,路线是 6516 → 5 → 1,其中 656 → 5 花费时间 3+2+2=7513 + 2 + 2 = 7,5 → 1 花费时间 2+1=32 + 1 = 3,总时间花费 1010。 当跳过 66 时,路线是 2512 → 5 → 1,其中 252 → 5 花费时间 1+1+2=41 + 1 + 2 = 4515 → 1 花费时间 2+1=32 + 1 = 3,总时间花费 77。 当跳过 55 时,路线是 2612 → 6 → 1,其中 262 → 6 花费时间 1+1+2+3=7611 + 1 + 2 + 3 = 7,6 → 1 花费时间 3+2+1=63 + 2 + 1 = 6,总时间花费 1313。 当跳过 11 时,路线时 2652 → 6 → 5,其中 262 → 6 花费时间 1+1+2+3=7651 + 1 + 2 + 3 = 7,6 → 5 花费时间 3+2+2=73 + 2 + 2 = 7,总时间花费 1414

对于 20%20\% 的数据,2KN1022 ≤ K ≤ N ≤ 10^2。 对于 40%40\% 的数据,2KN1042 ≤ K ≤ N ≤ 10^4。 对于 100%100\% 的数据,2KN1051u,v,AiN1t1052 ≤ K ≤ N ≤ 10^5,1 ≤ u, v, A_i ≤ N,1 ≤ t ≤ 10^5。保证AiA_i 两两不同。