P10731 [NOISG 2023 Qualification] Network
题目描述
鸭子 Rui Yuan 有 $n$ 台服务器和 $n-1$ 条**双向**数据线,其中第 $i$ 条数据线**双向**连接 $u_i$ 和 $v_i$。保证对于所有 $1 \le i \not = j \le n$,可以通过数据线从第 $i$ 台服务器到达第 $j$ 台服务器,反之亦然。
Rui Yuan 还有 $m$ 个应用程序正在运行,第 $j$ 个程序分布在 $a_j$ 和 $b_j$ 两台服务器上运行。
初始时,所有服务器都在运行状态。
第 $j$ 个应用程序如果对下面两个条件**都**成立时,可以运行:
- $a_j$ 和 $b_j$ 均为运行中的服务器。
- $a_j$ 和 $b_j$ 之间可以通过数据线和**正在运行的服务器**连接。
Rui Yuan 想请你求出,至少停止运行多少台服务器,才能使所有应用程序停止运行。
输入格式
第一行,两个整数 $n,m$。
接下来 $n-1$ 行,每行两个整数 $u_i,v_i$。
接下来 $m$ 行,每行两个整数 $a_j,b_j$。
输出格式
第一行,一个整数 $x$,表示最少要停运多少台服务器。
接下来 $1$ 行 $x$ 个整数,表示要停运的服务器的编号。所有 $x$ 个整数应互不相同。你可以以任意顺序输出它们。
说明/提示
### 【数据范围】
|$\text{Subtask}$|分值|特殊性质|
|:-:|:-:|:-:|
|$0$|$0$|样例|
|$1$|$4$|$a_i=b_i$|
|$2$|$17$|$u_i=i,v_i=i+1$|
|$3$|$14$|$n,m\le15$|
|$4$|$29$|$n,m\le2000$|
|$5$|$36$|无|
对于 $100\%$ 的数据,$1 \le n,m \le 200000,1 \le u_i,v_i \le n,u_i\not = v_i,1 \le a_j,b_j\le n$。