Cod sursa(job #764583)

Utilizator swift90Ionut Bogdanescu swift90 Data 5 iulie 2012 17:06:29
Problema Zvon Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.65 kb
#include<cstdio>
#include<vector>
#include<algorithm>
using namespace std;
int N,T;
vector<int> nr[100100];
int DF(int x){
	int S=0,i=1;
	for(size_t j=0;j<nr[x].size();++j)
		nr[x][j]=DF(nr[x][j]);
	sort(nr[x].begin(),nr[x].end());
	for(int j=(int)nr[x].size()-1;j>=0;--j,++i){
		if(i+nr[x][j]>S)
			S=i+nr[x][j];
	}
	nr[x].clear();
	return S;
}
int main(){
	freopen("zvon.in","r",stdin);
	freopen("zvon.out","w",stdout);
	int i,x,y;
	scanf("%d",&T);
	for(;T;--T){
		scanf("%d",&N);
		for(i=1;i<N;++i){
			scanf("%d%d",&x,&y);
			nr[x].push_back(y);
		}
		printf("%d\n",DF(1));
	}
	fclose(stdin);
	fclose(stdout);
	return 0;
}