#include <bits/stdc++.h>
using namespace std;
const int N=1e5+10;
map<int,int> other;
long long ans;
int main(){
int n,k;
cin >> n >> k;
for(int i=1;i<=k;i++){
int x;
cin >> x;
other[x]=i;
}
for(int i=1;i<n;i++){
int a,b,c;
cin >> a >> b >> c;
if(other.find(a)!=other.end() && other.find(b)!=other.end()){
ans+=c;
}
}
cout << ans;
return 0;
}
只有第一个点和第三个点AC了