#1923. 毕业旅行

毕业旅行

题目描述

又到了一年毕业的季节,Alex\red{Alex }和他们班的同学们打算出去旅行,而选择旅行景点这个 艰难的任务自然就落在了 Alex\red{Alex }身上。Alex\red{Alex }已经搜集了 n\red{n }个景点的信息,这些景点之间某些 可能会通过有向的道路连接,景点和道路构成了一个有向无环图,两个景点之间可能会有不 止一条道路。Alex\red{Alex }想选择其中的一些作为旅行的目的地,而他又希望任意的两个目的地都 不连通。Alex\red{Alex }想让你帮忙计算一下,他最多能选择多少目的地。

输入格式

第一行两个整数 n,m\red{n,m ,}分别表示旅游景点数和道路数。

接下来 m\red{m }行,每行两个整数 A,B\red{A,B ,}表示有一条从景点 A\red{A }到景点 B\red{B }的有向道路。

输出格式

在第一行输出一个整数,表示最多可以选择多少景点。

在第二行输出若干个空格分开的整数,表示 Alex\red{Alex }选择的景点编号。如果有多个方案, 输出任意一个即可。编号的输出顺序任意。

样例

输入样例

7 5 
1 2 
3 2 
2 4 
4 5 
4 6

输出样例

3 
1 3 7

提示

对于 20%\red{20\% }的数据,保证1<=n<=20\red{1<=n<=20}

对于 100%\red{100\% }的数据,保证1<=n<=200,0<=m<=n2\red{1<=n<=200,0<=m<=n^2 }