#include<cstdio>
#include<iostream>
#include<vector>
using namespace std;
vector <int> ger[105];
int n, m;
int gerlevel[105],maxlevel=0,maxlevelnum=0;
void dfs(int x,int level)
{
gerlevel[level]++;
if(maxlevelnum<gerlevel[level])
maxlevelnum=gerlevel[level],maxlevel=level;
for(int i=0;i<ger[x].size();i++)
{
dfs(ger[x][i],level+1);
}
}
int main()
{
cin>>n>>m;
int root,num,child;
for(int i=0;i<m;i++)
{
cin>>root>>num;
for(int j=0;j<num;j++)
{
cin>>child;
ger[root].push_back(child);
}
}
dfs(1,1);
cout<<maxlevelnum<<' '<<maxlevel<<endl;;
return 0;
}
“相关推荐”对你有帮助么?
-
非常没帮助
-
没帮助
-
一般
-
有帮助
-
非常有帮助
提交