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