Cod sursa(job #2277010)

Utilizator robx12lnLinca Robert robx12ln Data 5 noiembrie 2018 18:26:47
Problema Diametrul unui arbore Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.67 kb
#include<bits/stdc++.h>
using namespace std;

ifstream fin("darb.in");
ofstream fout("darb.out");

const int DIM = 1e5 + 5;

int N, Ans, Nod_Ans;
vector<int> V[DIM];

void dfs( int nod, int tata, int D ){

    if( Ans < D )
        Ans = D, Nod_Ans = nod;

    for( int i = 0; i < V[nod].size(); i++ )
        if( V[nod][i] != tata )
            dfs( V[nod][i], nod, D + 1 );

}

int main(){

    fin >> N;
    for( int i = 1; i < N; i++ ){

        int x, y; fin >> x >> y;
        V[x].push_back( y );
        V[y].push_back( x );

    }

    dfs( 1, 0, 1 );
    Ans = 0;

    dfs( Nod_Ans, 0, 1 );
    fout << Ans << "\n";

    return 0;
}