Cod sursa(job #1453244)

Utilizator EpictetStamatin Cristian Epictet Data 23 iunie 2015 08:57:00
Problema Zvon Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.72 kb
#include <fstream>
#include <algorithm>
#include <vector>
#include <cstring>

#define Nmax 100010

using namespace std;

ifstream fin ("zvon.in");
ofstream fout ("zvon.out");

int T, N, timp, B[Nmax];
vector < int > V[Nmax];


void Reset_Values()
{
	memset(B, 0, sizeof(B));
	for (int i = 1; i <= N; i++) V[i].clear();
}

void DFS(int nod)
{
	timp = max (B[nod], timp);
	
	for (vector < int > :: iterator it = V[nod].begin(); it != V[nod].end(); it++)
	{
		B[*it] = B[nod] + 1;
		B[nod] ++;
		DFS(*it);
	}
}

int main()
{
	fin >> T;
	while (T--)
	{
		Reset_Values();
		fin >> N;
		for (int i = 1, x, y; i < N; i++)
		{
			fin >> x >> y;
			V[x].push_back(y);
		}
		
		timp = 0;
		
		DFS(1);
		
		fout << timp << '\n'; 
	}
	
	return 0;
}