2313 - 保留树
描述

给定一个由 N 个顶点组成的树,顶点编号从 1N。树的第 i 条边连接了顶点 A_i 和顶点 B_i

请在这棵树中删除一些(可以是 0 个)边和顶点,使得剩下的子树包含指定的 K 个顶点 V_1,\ldots,V_K,并且求出这棵子树的最小顶点数。

样例1解释

给定的树如左图所示,从中删除一些边和顶点后,包含顶点 1,3,51,3,5 的最小顶点数的子树如下图所示。

输入

第一行数字n,k,表示n个节点,保留k个节点

接下来n-1行,每行两个数字u,v

最后一行k个数字a_i,表示保留的节点编号


输出

至少保留下来的节点个数

样例

输入

7 3
1 2
1 3
2 4
2 5
3 6
3 7
1 3 5

输出

4

输入

4 4
3 1
1 4
2 1
1 2 3 4

输出

4

输入

5 1
1 4
2 3
5 2
1 2
1

输出

1
提示

- 1\ \leq\ K\ \leq\ N\ \leq\ 2\times\ 10^5

- 1\ \leq\ A_i,B_i\ \leq\ N

- 1\ \leq\ V_1\ <\ V_2\ <\ \ldots\ <\ V_K\ \leq\ N


题目参数
时间限制 1 秒
内存限制 128 MB
提交次数 79
通过次数 35