#P5870. [SEERC2018] Modern Djinn
[SEERC2018] Modern Djinn
题目描述
你不是一个 leader,你是一个 president。幸运的是,你有一只精灵,能够实现你的愿望。你的其中一个愿望就是假装你的社会中有 democracy。
社会很简单。社会里有 个人,编号从 到 ,一些人“开心”而另一些很平常(“不开心”)。人类这种生物非常奇妙,人们只在别人不开心时才感到开心。人们共有 个愿望,编号从 到 ,代表 想要 不开心。一个人 是开心的当且仅当他的至少一个愿望得到满足。
Democracy 也没那么复杂。有些人说为了实现 democracy,你需要至少一半的人是开心的(或一半的愿望得到满足),但这不全是事实。我刚才说过,你是一个好的 president,而不是一个好的 leader。你可以通过媒体来定义 democracy。因此,在所有的 个愿望中,你决定实现至少 个愿望。
剩下的事情就是选出你想实现的愿望,然后精灵会处理好一切。
输入格式
输入包含多组测试数据。第一行包含一个整数 ,代表测试数据的组数。接下来的输入中会按顺序给出每组测试数据。
在每组测试数据中,第一行包含两个正整数 和 ,代表社会中人的数量和愿望的数量。接下来 行每行包含两个整数 ,描述了一个愿望: 希望 不开心。
输出格式
对于每组测试数据,第一行输出一个整数 ,代表实现的愿望的数量,第二行输出 个整数,代表实现的愿望编号,输出的顺序不做限制。
2
3 3
1 2
2 3
3 1
4 4
1 2
2 3
3 4
1 4
1
2
2
1 4
提示
【数据范围与限制】
- 不存在 希望 不开心这样的愿望。
- 可能存在多个相同的 希望 不开心的愿望。
- 每组数据保证解一定存在。
- 输出任何正确的解都可以。
【样例解释】
第一组测试数据中,我们可以实现最多 个愿望,输出任意一个愿望都是可行的。
第二组测试数据中,另外一个可行的解是实现愿望 和 ,最少需要实现 个愿望。