luogu#P2700. 逐个击破

逐个击破

题目背景

三大战役的平津战场上,傅作义集团在以北平、天津为中心,东起唐山西至张家口的铁路线上摆起子一字长蛇阵,并企图在溃败时从海上南逃或向西逃窜。为了就地歼敌不让其逃走,指挥官制定了先切断敌人东西两头退路然后再逐个歼灭敌人的战略方针。秉承伟大军事家的战略思想,作为一个有智慧的军长你,遇到了一个类似的战场局面。

题目描述

现在有 NN 个城市,其中 KK 个被敌方军团占领了,NN 个城市间有 N1N-1 条公路相连,破坏其中某条公路的代价是已知的,现在,告诉你 KK 个敌方军团所在的城市,以及所有公路破坏的代价,请你算出花费最少的代价将这 KK 个地方军团互相隔离开,以便第二步逐个击破敌人。

输入格式

第一行包含两个正整数 NNKK

第二行包含 KK 个整数,表示哪个城市被敌军占领。

接下来 N1N-1 行,每行包含三个正整数 a,b,ca,b,c,表示从 aa 城市到 bb 城市有一条公路,以及破坏的代价 cc。城市的编号从 00 开始。

输出格式

输出一行一个整数,表示最少花费的代价。

5 3
1 2 4
1 0 4
1 3 8
2 1 1
2 4 3
4

提示

对于 10%10\% 的数据,N10N\le 10

对于 100%100\% 的数据,2N1052\le N\le10^52KN2\le K\le N1c1061\le c\le 10^6