Cod sursa(job #1119903)

Utilizator Daniel3717Aleca Daniel Adrian Daniel3717 Data 24 februarie 2014 20:38:35
Problema Zvon Scor 100
Compilator cpp Status done
Runda 4x4 Marime 1 kb
#include <iostream>
#include <fstream>
#include <vector>
#include <algorithm>
using namespace std;
#define inf 2000000000
vector <int> muchii[100005];
int nt,it,i,n,a,b;
int go(int node)
{
    int i;
    vector <int> timp;
    timp.clear();
    int mx=0;
    for (i=0;i<muchii[node].size();i++)
        timp.push_back(go(muchii[node][i]));
    sort(timp.rbegin(),timp.rend());
    for (i=0;i<timp.size();i++)
    {
        timp[i]=timp[i]+i+1;
        if (timp[i]>mx)
            mx=timp[i];
    }
    return mx;
}
int main(void)
{
    FILE * f;
    f=fopen("zvon.in","r");
    ofstream g("zvon.out");
    fscanf(f,"%d",&nt);
    for (it=1;it<=nt;it++)
    {
        fscanf(f,"%d",&n);
        for (i=0;i<100000;i++)
            muchii[i].clear();
        for (i=0;i<n-1;i++)
        {
            fscanf(f,"%d%d",&a,&b);
            muchii[a].push_back(b);
        }
        if (n==1)
            g<<"0\n";
        else
            g<<go(1)<<'\n';
    }
    return 0;
}