Pagini recente » Cod sursa (job #2968681) | Cod sursa (job #2423265) | Cod sursa (job #2170261) | Cod sursa (job #397168) | Cod sursa (job #1726477)
#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
int N,T,St[100100];
vector<int> V[100100];
int dfs(int v){
int val,st=0;
vector<int> S;
for(auto it:V[v]){
val = dfs(it);
S.push_back(val);
}
sort(S.rbegin(),S.rend());
//cout << v << " : ";
for(auto it:S){
// cout << it << ' ';
while(st && St[st] == it) st--,it++;
St[++st] = it;
};
//cout << '\n';
return St[bool(st)]+1;
}
int main(){
ifstream cin("zvon.in");
ofstream cout("zvon.out");
ios_base::sync_with_stdio(0);
cin >> T;
while(T--){
cin >> N;
for(int x,y,i=1;i<N;i++){cin >> x >> y; V[x].push_back(y);}
cout << dfs(1)-1<< '\n';
for(int i = 0;i<N;i++) V[i].clear();
//cout << "________\n";
}
return 0;
}