Pagini recente » Cod sursa (job #2425560) | Cod sursa (job #1508002) | Cod sursa (job #1324459) | Cod sursa (job #2242831) | Cod sursa (job #1511895)
#include <fstream>
#include <vector>
#include <algorithm>
#define dim 100005
using namespace std;
ifstream fin("zvon.in");
ofstream fout("zvon.out");
int n,i,m,j,a,b,t,viz,best[dim];
vector<int>v[dim];
bool cmp(int a,int b){
return best[a]>best[b];
}
void dfs(int nod){
for(int i=0; i<v[nod].size();i++){
int vec;
vec=v[nod][i];
dfs(vec);
}
std:sort(v[nod].begin(),v[nod].end(),cmp);
for(int i=0;i<v[nod].size();i++){
int vec=v[nod][i];
best[nod]=max(best[nod],best[vec]+i+1);
}
}
int main(){
fin>>t;
for(int x=1;x<=t;x++){
fin>>n;
for(i=1;i<=n;i++){
v[i].clear();
best[i]=0;
}
for(i=1;i<n;i++){
fin>>a>>b;
v[a].push_back(b);
}
dfs(1);
fout<<best[1]<<"\n";
}
return 0;
}