#include <cstdio>
#include <map>
#include <vector>
#include <cstring>
#include <algorithm>
using namespace std;
#define MAX 100
map<int , vector<int> > data ;
int ans[MAX] ;
int maxChild = 0 , maxLevel = 0 ;
void bfs(int p , int level)
{
int i ;
int tempChild = 0 ;
ans[level] ++ ;
if( ans[level] > maxChild )
{
maxChild = ans[level] ;
maxLevel = level ;
}
if( data.count(p) == 0 )
{
return ;
}
for( i = 0 ; i < data[p].size() ; i ++ )
{
bfs( data[p][i] , level + 1) ;
}
}
int main(void)
{
int N , count ;
memset( ans , 0 , sizeof( ans ) ) ;
//freopen("input.txt" , "r" , stdin) ;
scanf("%d %d" , &N , &count);
while(count--)
{
int p , child ;
vector<int>temp ;
scanf("%d %d" , &p , &child);
while(child--)
{
int t ;
scanf("%d" , &t);
temp.push_back(t) ;
}
data[p] = temp ;
}
bfs(1 , 1) ;
printf("%d %d\n" , maxChild , maxLevel);
return 0 ;
}
1094. The Largest Generation
最新推荐文章于 2020-02-02 08:23:15 发布