题目描述
题目译自 BalticOI 2017 Day1「Railway」
Bergen 基础设施建设部在几年前就有了把所有的城市用铁路连起来的想法。
可惜的是,过了很长时间了,这个计划并没有启动。
所以,基础设施建设部部长就准备重启这个计划,然后把它搞得简单亿点。
原定的计划是有 $n$ 个城市用 $n-1$ 条无向铁路连起来,这些铁路的编号为 $1$ 到 $n-1$。
现在有 $m$ 个副部长,每个副部长都认为有一些城市是必须连起来的。
比如说这个副部长想把 $a$ 和 $c$ 连起来,有两条道路 $a - b$ 和 $b - c$,那么副部长的要求等价过来就是选择这两条道路。
现在要找出几条道路是至少 $k$ 个副部长选择的。
部长就找到了你,想让你找出这几条道路。
输入格式
第一行三个整数 $n,m,k$ 代表城市数,副部长数和最少需要满足多少个副部长。
接下来 $n-1$ 行每行两个整数 $a_i$ 和 $b_i$ 代表第 $i$ 条铁路是 $a_i$ 和 $b_i$ 之间的。
接下来 $m$ 行首先一个整数 $s_i$ 代表这个副部长觉得有 $s_i$ 个城市需要相连,接下来 $s_i$ 个整数代表副部长觉得哪些城市需要相连。
输出格式
第一行一个整数 $r$ 代表至少满足 $k$ 个副部长的铁路有多少条。
第二行 $r$ 个整数代表要建设编号为哪些的铁路,请输出其升序排列。
样例
input
6 3 2
1 3
2 3
3 4
6 4
4 5
4 1 3 2 5
2 6 3
2 3 2
output
2
2 3
$3$ 个副部长的要求如下:
- $1-3,2-3,3-4,4-5$
- $3-4,4-6$
- $2-3$
至少满足 $2$ 个副部长的道路为 $2$ 号和 $3$ 号。
数据范围与提示
对于 $100\%$ 的数据,$2 \le si \le n \le 10^5$,$1 \le k \le m \le 5 \times 10^4$。记 $\sum{i=1}^m s_i=S$,则 $S\le 1.5\times 10^5$
详细子任务与附加限制如下:
- Subtask 1(8 pts):$n \le 10^4$,$S \le 2 \times 10^3$。
- Subtask 2(15 pts):$n \le 10^4$,$m \le 2 \times 10^3$。
- Subtask 3(7 pts):每个城市最多是 $2$ 条道路的端点。
- Subtask 4(29 pts):$k=m$,$s_i=2$。
- Subtask 5(16 pts):$k=m$。
- Subtask 6(25 pts):无特殊限制。