Pagini recente » Cod sursa (job #1709077) | Cod sursa (job #426117) | Cod sursa (job #1237979) | Cod sursa (job #123786) | Cod sursa (job #1888614)
#include <iostream>
#include <fstream>
#include <algorithm>
#include <vector>
using namespace std;
ifstream f("zvon.in");
ofstream g("zvon.out");
int t[100001], n;
vector <int> v[100001];
bool cmp(int x, int y)
{
return t[x] > t[y];
}
int DFS(int elem)
{
int i;
for(i = 0 ; i < v[elem].size(); i++)
{
int y;
y = v[elem][i];
DFS(y);
}
sort(v[elem].begin(), v[elem].end(), cmp);
t[elem] = 0;
for(i = 0; i < v[elem].size(); i++)
{
int y;
y = v[elem][i];
t[elem] = max(t[elem], i + 1 + t[y]);
}
}
int main()
{
int test;
f >> test;
while(test)
{
f >> n;
int i , j , a , b;
for(i = 1 ; i < n ; i++)
{
f >> a >> b;
v[a].push_back(b);
}
DFS(1);
g << t[1] << '\n';
for(i = 1 ; i <= n ; i++)
{
v[i].clear();
t[i] = 0;
}
test--;
}
}