Pagini recente » Cod sursa (job #2098432) | Cod sursa (job #381171) | Cod sursa (job #938441) | Cod sursa (job #1846092) | Cod sursa (job #1891208)
#include <bits/stdc++.h>
#define NMax 100005
using namespace std;
ifstream fin("zvon.in");
ofstream fout("zvon.out");
int M,N;
int T[NMax];
vector<int> Graf[NMax];
bool sortcomp(int a,int b)
{
return T[a]>T[b];
}
void DFS(int nod)
{
for(vector<int>::iterator it=Graf[nod].begin();it!=Graf[nod].end();it++)
DFS(*it);
sort(Graf[nod].begin(),Graf[nod].end(),sortcomp);
T[nod]=0;
for(int i=0;i<Graf[nod].size();i++)
T[nod]=max(T[nod],i+1+T[Graf[nod][i]]);
}
int main()
{
fin>>M;
while(M--)
{
fin>>N;
for(int i=1;i<N;i++)
{
int x,y;
fin>>x>>y;
Graf[x].push_back(y);
}
DFS(1);
fout<<T[1]<<"\n";
for(int i=1;i<=N;i++)
T[i]=0, Graf[i].clear();
}
return 0;
}