AT_qupc2018_g Tapu & Tapi 2

题目描述

给定一棵含有 $N$ 个节点的树。树上的第 $i$ 条边连接点 $A_i$ 和点 $B_i$,长度为 $V_i$。 树上有 $X$ 只鸡和 $Y$ 只鸭,其中第 $j$ 只鸡在点 $P_j$,第 $k$ 只鸭在点 $Q_k$。每个节点上至多有一个动物。 鸡讨厌鸭,因此我们需要删去一部分边,使得任意一只鸡所在的连通块内都不存在鸭。请求出最少所需删掉的边的长度之和。

输入格式

第一行输入三个整数 $N$,$X$,$Y$。 第二行到第 $N$ 行,第 $(i+1)$ 行输入三个整数 $A_i$,$B_i$,$V_i$。 第 $(N+1)$ 行输入 $X$ 个整数,第 $j$ 个整数为 $P_j$。 第 $(N+2)$ 行输入 $Y$ 个整数,第 $k$ 个整数为 $Q_k$。

输出格式

一行一个整数表示答案。

说明/提示

#### 样例 #1 解释 删去第 $2$、第 $3$ 条边。 #### 样例 #2 解释 删去第 $2$ 条边。 #### 数据规模与约定 对于所有测试点,保证 $2\le N\le 5\times 10^5$,$1\le X,Y\le N$,$1\le A_i\lt B_i\le N$,$1\le V_i\le 10^9$,$1\le P_j,Q_k\le N$,将 $P$ 数组和 $Q$ 数组合并后数组内的元素两两不同,且给定的一定是一棵树。 如果你解决了 $N\le 500$ 的部分,你将拿到 $40$ 分。(本题在 AT 上满分 $700$)