每组输入数据的第一行是一个整数n,表示城市个数。
接下来的n-1行,每行3个整数,u、v、w,每两个整数之间用一个空格隔开,表示从城市u到城市v有一条长为w的道路。数据保证输入的是一棵树,且根节点编号为1。
接下来一行一个整数m,表示军队个数。
接下来一行m个整数,每两个整数之间用一个空格隔开,分别表示这m个军队所驻扎的城市的编号。
数据规模:
保证军队不会驻扎在首都。
对于20%的数据,2≤n≤10;
对于40%的数据,2≤n≤50,0<w<105;
对于60%的数据,2≤n≤1000,0<w<106;
对于80%的数据,2≤n≤10,000;
对于100%的数据,2≤m≤n≤50,000,0<w<109。
每组输出共一行,包含一个整数,表示控制疫情所需要的最少时间。如果无法控制疫情则输出-1。
下面是对样例数据的解释:
第一支军队在2号点设立检查点,第二支军队从2号点移动到3号点设立检查点,所需时间为3个小时。
4 1 2 1 1 3 2 3 4 3 2 2 2
3