Pagini recente » Cod sursa (job #3189837) | Cod sursa (job #1945391) | Cod sursa (job #3000689) | Cod sursa (job #466343) | Cod sursa (job #2285650)
#include <fstream>
#include <vector>
using namespace std;
ifstream fin("darb.in");
ofstream fout("darb.out");
int n,i,j,p,u,m,f[100005],lG[100005],c[100005];
vector <int>L[100005];
int bfs(int a){
p=1;
u=1;
c[p]=a;
f[a]=1;
while(p<=u){
for(j=0;j<L[c[p]].size();j++){
if(f[L[c[p]][j]]==0){
c[u++]=L[c[p]][j];
f[L[c[p]][j]]=1;
lG[L[c[p]][j]]=lG[c[p]]+1;
}
}
p++;
}
m=lG[c[u]];
for(i=1;i<=n;i++){
lG[i]=0;
f[i]=0;
}
return c[u];
}
int main(){
fin>>n;
while(fin>>i>>j){
L[i].push_back(j);
L[j].push_back(i);
}
bfs(bfs(1));
fout<<m+1;
return 0;
}