Pagini recente » Cod sursa (job #1470305) | Cod sursa (job #2407585) | Cod sursa (job #1837676) | Cod sursa (job #2171931) | Cod sursa (job #2245989)
#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 G[lsh].size()>G[rsh].size();
}
void DFS(int node)
{
maxx=max(_time[node],maxx);
int no=1;
for(const auto &it:G[node])
{
_time[it]=_time[node]+no;
++no;
DFS(it);
}
}
void solve()
{
_time[1]=0;
for(int i=1;i<=n;i++)
sort(G[i].begin(),G[i].end(),comp);
DFS(1);
g<<maxx<<'\n';
}
int main()
{
int T;
f>>T;
while(T--)
{
read();
solve();
clear_data();
}
return 0;
}