Cod sursa(job #3296078)

Utilizator cristi95Plesnicute Cristian-Jovani cristi95 Data 11 mai 2025 10:45:21
Problema Diametrul unui arbore Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.68 kb
#include <bits/stdc++.h>

using namespace std;

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

int n, a, b, viz[100001], maxi = 0, urm = 0;

vector <int> v[100001];

void dfs (int node, int dist) {
    viz[node] = 1;

    if (dist > maxi) {
        maxi = dist;
        urm = node;
    }

    for (auto it : v[node])
        if (viz[it] == 0)
            dfs(it, dist + 1);
}

int main()
{
    fin >> n;

    for (int i = 1; i < n; ++i) {
        fin >> a >> b;

        v[a].push_back(b);
        v[b].push_back(a);

    }

    dfs(1, 0);
    maxi = 0;
    memset(viz,0,sizeof(viz));
    dfs(urm, 0);

    fout << maxi + 1;
    return 0;
}