Pagini recente » Cod sursa (job #3255144) | Cod sursa (job #2983790) | Cod sursa (job #1993912) | Cod sursa (job #3199396) | Cod sursa (job #1890549)
#include <fstream>
#include <vector>
#include <algorithm>
#define nmax 100001
using namespace std;
ifstream fin("zvon.in");
ofstream fout("zvon.out");
int t,n,v[nmax];
vector < int > leg[nmax];
void read()
{
int i,x,y;
fin>>n;
for(i=1; i<n; i++)
{
fin>>x>>y;
leg[x].push_back(y);
}
}
bool cmp(int x, int y)
{
return v[x]>v[y];
}
void DFS(int x)
{
int i;
for(i=0; i<leg[x].size(); i++)
DFS(leg[x][i]);
sort(leg[x].begin(),leg[x].end(),cmp);
v[x]=0;
for(i=0; i<leg[x].size(); i++)
v[x]=max(v[x],i+1+v[leg[x][i]]);
}
int main()
{
int i;
fin>>t;
while(t)
{
read();
DFS(1);
fout<<v[1]<<'\n';
for(i=0; i<=n; i++)
{
leg[i].clear();
v[i]=0;
}
t--;
}
return 0;
}