Cod sursa(job #3360307)

Utilizator TianaInfoLitcanu Tiana TianaInfo Data 11 iulie 2026 23:33:24
Problema Diametrul unui arbore Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.65 kb
#include <bits/stdc++.h>

using namespace std;
ifstream fin("darb.in");
ofstream fout("darb.out");
#define cin fin
#define cout fout

vector<int> v[100005];
int n,d[100005],maxim,nod,x,y;

void dfs(int x,int tata)
{
    if(d[x]>maxim) maxim=d[x],nod=x;

    for(int i=0;i<v[x].size();i++)
    {
        if(v[x][i]!=tata)
        {
            d[v[x][i]]=d[x]+1;
            dfs(v[x][i],x);
        }
    }
}

int main()
{
    cin>>n;
    for(int i=1;i<n;i++)
    {
        cin>>x>>y;
        v[x].push_back(y);
        v[y].push_back(x);
    }

    dfs(1,0);

    maxim=0;
    d[nod]=0;

    dfs(nod,0);

    cout<<maxim+1;
}