Cod sursa(job #2404940)

Utilizator mariastStoichitescu Maria mariast Data 13 aprilie 2019 16:47:55
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 f ("zvon.in");
ofstream g ("zvon.out");
vector<int>G[100010];
int timp[100010],n,x,y,test;
void dfs(int x){
    if(G[x].size()!=0){
        int numar=G[x].size();
        int k=0;
        int vec[100010];
        for(int i=0;i<numar;++i){
            dfs(G[x][i]);
            vec[++k]=timp[G[x][i]];
        }
        sort(vec+1,vec+k+1);
        for(int i=k;i>=1;--i){
            timp[x]=max(timp[x],vec[i]+k-i+1);
        }
    }

}
int main()
{
    f>>test;
    for(int j=1;j<=test;++j){
        f>>n;
        for(int i=1;i<n;++i){
            f>>x>>y;
            G[x].push_back(y);
        }
        dfs(1);
        g<<timp[1]<<'\n';
        for(int i=1;i<=n;++i){
            timp[i]=0;
            G[x].clear();
        }
    }
}