Cod sursa(job #1128059)

Utilizator DaniEsDani Stetcu DaniEs Data 27 februarie 2014 15:08:28
Problema Diametrul unui arbore Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.57 kb
#include <fstream>
#define NMax 100005
using namespace std;
ifstream fin("darb.in");
ofstream fout("darb.out");
int n, start, sol, use[NMax];
vector <int> G[NMax];
void Read()
{
	fin>>n;
	for(int i=1,x,y;i<n;i++)
	{
		fin>>x>>y;
		G[x].push_back(y);
		G[y].push_back(x);
	}
}

void DFS(int nod, int level)
{
	use[nod]=1;
	if(level>sol)
	{
		start=nod;
		sol=level;
	}
	for(unsigned int i=0; i<G[nod].size(); i++)
		if(!use[G[nod][i])
			DFS(G[nod][i], level+1);
}

int main()
{
	Read();
	DFS(1, 1);
	DFS(start, 1);
	fout<<sol;
	return 0;
}