Pagini recente » Cod sursa (job #2734112) | Cod sursa (job #2092231) | Cod sursa (job #2766974) | Cod sursa (job #409689) | Cod sursa (job #2245992)
#include <bits/stdc++.h>
#define Nmax 100005
using namespace std;
ifstream f("zvon.in");
ofstream g("zvon.out");
vector <int> G[Nmax];
int _time[Nmax];
int n,maxx;
void read()
{
f>>n;
int x,y,i;
for(i=1;i<n;i++)
{
f>>x>>y;
G[x].push_back(y);
}
}
void clear_data()
{
maxx=0;
for(int i=1;i<=n;i++)
{
G[i].clear();
_time[i]=0;
}
}
inline int comp(const int &lsh, const int &rsh)
{
return _time[lsh]>_time[rsh];
}
void DFS(int node)
{
for(const auto &it:G[node])
DFS(it);
sort(G[node].begin(),G[node].end(),comp);
for(int i=0;i<(int)G[node].size();i++)
_time[node]=max(_time[node],_time[G[node][i]]+i+1);
}
void solve()
{
DFS(1);
g<<_time[1]<<'\n';
}
int main()
{
int T;
f>>T;
while(T--)
{
read();
solve();
clear_data();
}
return 0;
}