[GESP202503 八级] 割裂
题目描述
小杨有一棵包含 n 个节点的树,其中节点的编号从 1 到 n。
小杨设置了一个好点对 $\{\langle u_1, v_1 \rangle, \langle u_2, v_2 \rangle, \dots, \langle u_a, v_a \rangle\}$ 和一个坏点对 ⟨bu,bv⟩。一个节点能被删除,当且仅当:
- 删除该节点后对于所有的 1≤i≤a,好点对 ui 和 vi 仍然连通;
- 删除该节点后坏点对 bu 和 bv 不连通。
如果点对中的任意一个节点被删除,其视为不连通。
小杨想知道,还有多少个节点能被删除。
输入格式
第一行包含两个非负整数 n, a,含义如下题面所示。
接下来 n−1 行,每行包含两个正整数 xi,yi,代表存在一条连接节点 xi 和 yi 的边;
之后 a 行,每行包含两个正整数 ui,vi,代表一个好点对 ⟨ui,vi⟩;
最后一行包含两个正整数 bu,bv,代表坏点对 ⟨bu,bv⟩。
输出格式
输出一个非负整数,代表删除的节点个数。
输入输出样例
6 2
1 3
1 5
3 6
3 2
5 4
5 4
5 3
2 6
2
说明/提示
子任务编号 |
分值 |
n |
a |
1 |
20 |
=10 |
=0 |
2 |
20 |
≤100 |
≤100 |
3 |
60 |
≤106 |
≤105 |
对于全部数据,保证有 1≤n≤106, 0≤a≤105, ui=vi, bu=bv。