Cod sursa(job #2954157)

Utilizator BlaugranasEnal Gemaledin Blaugranas Data 13 decembrie 2022 12:53:07
Problema Diametrul unui arbore Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.52 kb
#include<bits/stdc++.h>
using namespace std;
ifstream F("darb.in");
ofstream G("darb.out");
vector<int> v[100001];
int n,i,j,w[100001],m;
bool u[100001];
void A(int i)
{
    int j,k;
    for(k=v[i].size(),u[i]=1,j=0;j<k;++j)
        if(!u[v[i][j]])
            w[v[i][j]]=w[i]+1,A(v[i][j]);
}
int main()
{
    for(F>>n;F>>i>>j;v[i].push_back(j),v[j].push_back(i));
    for(A(1),i=1;i<=n;u[i]=0,w[i++]=0)
        if(w[i]>m)
            m=w[i],j=i;
    for(A(j),m=0,i=1;i<=n;m=max(m,w[i++]));
    return G<<m+1,0;
}