Pagini recente » Cod sursa (job #3161634) | Cod sursa (job #1373688) | Cod sursa (job #2626179) | Cod sursa (job #2713365) | Cod sursa (job #1766378)
#include <bits/stdc++.h>
#define NMax 100001
using namespace std;
ifstream f("zvon.in");
ofstream g("zvon.out");
vector<int> G[NMax];
int t,n,x,y,curent;
int dp[NMax];
bool cmp(int x,int y){
return(dp[x] > dp[y]);
}
void dfs(int nod){
for(int i = 0; i < G[nod].size(); ++i)
dfs(G[nod][i]);
sort(G[nod].begin(),G[nod].end(),cmp);
for(int i = 0; i < G[nod].size(); ++i)
dp[nod] = max(i + 1 + dp[G[nod][i]],dp[nod]);
}
int main()
{
f >> t;
while(t--){
for(int i = 1; i <= n; ++i){
G[i].clear();
dp[i] = 0;
}
f >> n;
for(int i = 1; i < n; ++i){
f >> x >> y;
G[x].push_back(y);
}
dfs(1);
g << dp[1] << '\n';
}
return 0;
}