Cod sursa(job #1511895)

Utilizator AndyCatrunaCatruna Andy AndyCatruna Data 27 octombrie 2015 12:05:00
Problema Zvon Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.89 kb
#include <fstream>
#include <vector>
#include <algorithm>
#define dim 100005
using namespace std;
ifstream fin("zvon.in");
ofstream fout("zvon.out");
int n,i,m,j,a,b,t,viz,best[dim];
vector<int>v[dim];
bool cmp(int a,int b){
    return best[a]>best[b];
}
void dfs(int nod){
    for(int i=0; i<v[nod].size();i++){
        int vec;
        vec=v[nod][i];
        dfs(vec);
    }

    std:sort(v[nod].begin(),v[nod].end(),cmp);
    for(int i=0;i<v[nod].size();i++){
        int vec=v[nod][i];
        best[nod]=max(best[nod],best[vec]+i+1);
    }

}
int main(){
    fin>>t;
    for(int x=1;x<=t;x++){

        fin>>n;
        for(i=1;i<=n;i++){
            v[i].clear();
            best[i]=0;
        }
        for(i=1;i<n;i++){
            fin>>a>>b;
            v[a].push_back(b);
        }
        dfs(1);
        fout<<best[1]<<"\n";
    }



    return 0;
}