Cod sursa(job #2489458)

Utilizator bluestorm57Vasile T bluestorm57 Data 8 noiembrie 2019 19:58:01
Problema Zvon Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.89 kb

#include <bits/stdc++.h>

using namespace std;

ifstream f("zvon.in");
ofstream g("zvon.out");

const int NMAX = 100005;
const int inf = 1e9;
int n,T,ans;
vector < int > v[NMAX];
deque < pair < int, int> > d;
int lvl[NMAX], sons[NMAX];

bool cmp(int x, int y){
    return sons[x] > sons[y];
}

void dfs(int node){
    for(auto it: v[node])
        dfs(it);
    sort(v[node].begin(), v[node].end(), cmp);
    for(int i = 0 ; i < v[node].size() ; i++)
        sons[node] = max(sons[node], sons[v[node][i]] + i + 1);
}

int main(){
    int i,x,y,node,time;
    f >> T;
    while(T--){
        f >> n;
        for(i = 1 ; i <= n ; i++)
            v[i].clear(), sons[i] = 0;
        d.clear();
        for(i = 1 ; i < n ; i++){
            f >> x >> y;
            v[x].push_back(y);
        }

        dfs(1);
        g << sons[1] << "\n";

    }


    return 0;
}