问题 D: 猫咪们狂欢

内存限制:256 MB 时间限制:1 S
题面:传统 评测方式:文本比较 上传者:
提交:2 通过:2

题目描述

猫咪们生活在树上。 具体来说,有n只猫咪和两棵大小为n的树4。猫咪编号为1∼n,每棵树上的节点编号也 为1∼n(编号各不相同)。 今晚,每只猫咪要分别选择一棵树,并待在与其编号相同的节点。 在这n只猫咪之中,有k只猫咪是狂欢猫。狂欢猫晚上不会睡觉,而是会选择开party。其 他猫咪则会选择睡觉。 每条树边都有一个狂欢值,如果这条边连接的两个节点在晚上都有狂欢猫待着,这个狂欢值 就会被累加到总狂欢值上。 最大化今晚的总狂欢值,并输出这个值。

输入格式

第一行包含一个正整数T(1≤T ≤50),表示测试用例组数。对于每一组测试用例: 
• 第一行包含两个正整数n和k,分别表示猫咪的总数和狂欢猫的数量,1≤k≤n≤1000. 
• 接下来一行包含k个整数,分别表示狂欢猫的编号,保证这k个数互不相等。 
• 接下来n−1行,每行包含三个正整数u,v和w,表示第一棵树的一条连接u,v且狂 欢值为w的边。 
• 接下来n−1行,每行包含三个正整数u,v和w,表示第二棵树的一条连接u,v且狂 欢值为w的边。 
• 上述w:1≤w≤20. • 对所有测试用例,∑n≤10000.

输出格式

共T 行,每行一个整数分别表示对应测试用例的答案。

输入样例 复制

2
43
123
121
232
241
235
241
411
43
123
122
231
241
232
241
411

输出样例 复制

5
3

数据范围与提示

 •第一组数据,狂欢猫2,3待在第二棵树上,得到狂欢值5. 
 •第二组数据,狂欢猫1,2,3待在第一棵树上,得到狂欢值2+1=3.