您的位置:首页 > 其它

1094. The Largest Generation

2015-08-19 19:19 393 查看
#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 ;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: