1 #include<iostream>
2 using namespace std;
3 int n,m,tree[101]={0};
4 int main()
5 {
6 int i,x,y,root,maxroot,sum=0,j,Max=0;
7 cin>>n>>m;
8 for(i=1;i<=m;i++)
9 {
10 cin>>x>>y;
11 tree[y]=x;
12 }
13 for(i=1;i<=n;i++) //找出树根
14 if(tree[i]==0)
15 {
16 root=i;break;
17 }
18 for(i=1;i<=n;i++) //找孩子最多的结点
19 {
20 sum=0;
21 for(j=1;j<=n;j++)
22 if(tree[j]==i) sum++;
23 if(sum>Max)
24 {
25 Max=sum;maxroot=i;
26 }
27 }
28 cout<<root<<endl<<maxroot<<endl;
29 for(i=1;i<=n;i++)
30 if(tree[i]==maxroot) cout<<i<<" ";
31 return 0;
32 }