Cod sursa(job #2796868)

Utilizator vmnechitaNechita Vlad-Mihai vmnechita Data 8 noiembrie 2021 21:54:49
Problema Diametrul unui arbore Scor 90
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.66 kb
#include <bits/stdc++.h>
#define ll long long
#define pb push_back
#define pf push_front
#define MOD 1000000007
#define NMAX 100005

using namespace std;

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

vector < int > v[NMAX];
int nr, nrmax, j;

void dfs(int x, int prec, int nr);

int main()
{
    int n, i, x, y;

    fin >> n;
    for(i = 1; i < n; i++)
    {
        fin >> x >> y;
        v[x].pb(y), v[y].pb(x);
    }

    dfs(1, 0, 1);
    dfs(j, 0, 1);

    fout << nrmax;

    return 0;
}

void dfs(int x, int prec, int nr)
{
    if(nr > nrmax) nrmax = nr, j = x;
    for(auto it:v[x]) if(it != prec) dfs(it, x, nr + 1);
}