Cod sursa(job #2636736)

Utilizator PredescuSebastianIonPredescu Sebastian Ion PredescuSebastianIon Data 19 iulie 2020 14:30:31
Problema Zvon Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.89 kb
#include <fstream>
#include <vector>
#include <algorithm>

using namespace std;
ifstream f("zvon.in");
ofstream g("zvon.out");
int n,Q;
bool v[100001];
vector <int> a[100001];
int solve(int x)
{
    v[x]=1;
    vector <int> q;
    for(int i=0; i<a[x].size(); ++i)
    {
        if(!v[a[x][i]])
        {
            q.push_back(solve(a[x][i]));
        }
    }
    int m=0;
    sort(q.begin(),q.end());
    for(int i=0,j=q.size(); i<q.size(); ++i,--j)
    {
        m=max(m,q[i]+j);
    }
    return m;
}
int main()
{
    for(f>>Q; Q>0; --Q)
    {
        f>>n;
        for(int i=1; i<n; ++i)
        {
            int x,y;
            f>>x>>y;
            a[x].push_back(y);
            a[y].push_back(x);
        }
        g<<solve(1)<<'\n';
        for(int i=1; i<=n; ++i)
        {
            v[i]=0;
            a[i].clear();
        }
    }
    return 0;
}