Pagini recente » Cod sursa (job #2650294) | Cod sursa (job #670716) | Cod sursa (job #1545026) | Cod sursa (job #297534) | Cod sursa (job #1149507)
#include<fstream>
#include<vector>
#define maxn 100005
using namespace std;
ifstream fi("darb.in");
ofstream fo("darb.out");
vector <int> a[maxn];
int i,n,x,y,viz[maxn];
int ultim_nod,ultim;
void dfs(int nod,int k){
int i,lung=a[nod].size();
viz[nod]=1;
if(k>ultim){
ultim=k;
ultim_nod=nod;
}
for(i=0;i<lung;i++)
if(!viz[a[nod][i]]) dfs(a[nod][i],k+1);
}
int main(){
fi>>n;
for(i=1;i<=n;i++) viz[i]=0;
for(i=1;i<n;i++){
fi>>x>>y;
a[x].push_back(y);
a[y].push_back(x);
}
ultim_nod=1; ultim=1;
dfs(1,1);
for(i=1;i<=n;i++) viz[i]=0;
dfs(ultim_nod,1);
fo<<ultim;
fi.close();
fo.close();
return 0;
}