Cod sursa(job #2503182)

Utilizator divianegoescuDivia Negoescu divianegoescu Data 2 decembrie 2019 17:19:37
Problema Diametrul unui arbore Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.57 kb
#include <fstream>
#include <vector>
using namespace std;
ifstream fin("darb.in");
ofstream fout("darb.out");
int n,i,x,y,ind,nod,dmax,f[100002],sol;
vector <int> v[100002];
int dfs(int x,int niv){
    f[x]=1;
    if(niv>dmax){dmax=niv;nod=x;}
    for(int i=0;i<v[x].size();i++)
        if(!f[v[x][i]])
            dfs(v[x][i],niv+1);
}
int main(){
    fin>>n;
    for(i=1;i<n;i++){
        fin>>x>>y;
        v[x].push_back(y);
        v[y].push_back(x);
    }
    dfs(1,1);
    for(i=1;i<=n;f[i]=0,i++);
    dfs(nod,1);
    fout<<dmax;
    return 0;
}