Cod sursa(job #3195388)

Utilizator Theo20067Cismaru Theodor-Alexe Theo20067 Data 20 ianuarie 2024 17:53:22
Problema Zvon Scor 0
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.84 kb
#include <fstream>
#include <vector>
#include <algorithm>
using namespace std;
ifstream fin ("zvon.in");
ofstream fout("zvon.out");
int n,m,i,x,t,y,maxim,T[100003];
vector <int> L[100003];
void dfs(int x)
{
    for(auto j:L[x])
    {
        dfs(j);
        T[x]+=T[j];
    }
    sort(L[x].begin(),L[x].end(),[](int a,int b){return T[a]>T[b];});
}
void solve(int x,int t)
{
    maxim=max(maxim,t);
    for(int j=0;j<L[x].size();j++)
        solve(L[x][j],t+j+1);
}
int main()
{
    fin>>t;
    while(t--)
    {
        fin>>n;
        for(i=1;i<=n;i++)
            L[i].clear();
        for(i=1;i<n;i++)
        {
            T[i]=1;
            fin>>x>>y;
            L[x].push_back(y);
        }
        maxim=0;
        T[n]=1;
        dfs(1);
        solve(1,0);
        fout<<maxim<<"\n";
    }
    return 0;
}