Pagini recente » Cod sursa (job #1812355) | Cod sursa (job #1603730) | Cod sursa (job #2169370) | Cod sursa (job #2395928) | Cod sursa (job #158293)
Cod sursa(job #158293)
#include<stdio.h>
#include<algorithm>
#include<vector>
using namespace std;
int t,n;
int tmin[100001];
vector<int> li[100001];
vector<int>::iterator it;
int miamare(int a, int b){
return a>b;
}
void minimizare(int i){
vector<int> tfii;
for(it=li[i].begin();it!=li[i].end();it++){
minimizare(i);
tfii.push_back(tmin[*it]);
}
sort(tfii.begin(),tfii.end());
tmin[i]=0;
int p=0;
for(it=tfii.begin();it!=tfii.end();it++){
p++;
if(tmin[i]<*it+p)
tmin[i]=*it+p;
}
}
void citire(){
freopen("zvon.in","r",stdin);
freopen("zvon.out","w",stdout);
scanf("%d/n",&t);
for(;t;t--){
scanf("%d",&n);
for(int i=1;i<n;i++){
int a,b;
scanf("%d %d/n",&a,&b);
li[a].push_back(b);
}
minimizare(1);
printf("%d/n",tmin[1]);
for(int i=1;i<=n;i++)
li[i].clear();
}
fclose(stdin);
fclose(stdout);
}
int main(){
citire();
return 0;
}