#CF1019C. Sergey's problem
Sergey's problem
CF1019C Sergey's problem
题目描述
Sergey 五岁了!当他一岁的时候,他的父母给了他一个数;当他两岁的时候,他的父母给了他一个整数数组;三岁时他收到了一个字符串;当他四岁时,他的妈妈轻轻地叫醒他,让他做一个好孩子并给了他一棵有根树。今天是他的五岁生日!他收到了一份来自父母的有向图(没有自环)。
因为他很有好奇心,他决定找出一个集合 ,使得其中的点两两之间没有连边,且对于不在集合中的任意一点 ,都存在集合内的一点 ,使得从 出发,最多经过两条边就能到达 。输出任意一组解。
输入格式
第一行两个正整数 ()表示图的点数和边数。
接下来 行每行两个整数 (,)表示 到 有一条有向边,可能有重边。
输出格式
第一行输出整数 表示集合中有 个点。
第二行输出 个整数表示集合中的点。保证有解。
输入输出样例 #1
输入 #1
5 4
1 2
2 3
2 4
2 5
输出 #1
4
1 3 4 5
输入输出样例 #2
输入 #2
3 3
1 2
2 3
3 1
输出 #2
1
3
说明/提示
在第一个样例中,点 彼此不连,而点 可以仅通过一条边到点 。
在第二个样例,你可以使用一步到点 ,使用两步到点 。
以下图片展示了样例及其答案。

