Cod sursa(job #2541957)

Utilizator BlueLuca888Girbovan Robert Luca BlueLuca888 Data 9 februarie 2020 11:30:12
Problema Diametrul unui arbore Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.72 kb
#include <iostream>
#include <fstream>
#include <vector>

using namespace std;

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

vector <int> v[100005];
int n, ii, jj, maxx, maxxnod;
bool ok[100005];

void dfs(int nod, int len){
     if(len > maxx){
          maxx    = len;
          maxxnod = nod;
     }

     ok[nod]=1;
     for(int i=0; i<v[nod].size(); i++)
          if(ok[v[nod][i]] == 0)
               dfs(v[nod][i], len+1);

     ok[nod]=0;
}

int main (){
     fin>>n;
     for(int i=1; i<n; i++){
          fin>>ii>>jj;
          v[ii].push_back(jj);
          v[jj].push_back(ii);
     }

     dfs(1, 1);
     maxx=0;
     dfs(maxxnod, 1);
     fout<<maxx;
     return 0;
}