Pagini recente » Cod sursa (job #2411913) | Cod sursa (job #2528136) | Cod sursa (job #674504) | Cod sursa (job #2152603) | Cod sursa (job #2696532)
#include <bits/stdc++.h>
#include <iostream>
using namespace std;
ifstream f ("darb.in");
ofstream g ("darb.out");
vector<int> a[100010];
queue<int> q;
int pret[100010];
int N,u,d;
void bfs(int S)
{
memset(pret, 0, sizeof(pret));
q.push(S);
pret[S] = 1;
while(!q.empty())
{
int x = q.front();
for(auto i : a[x])
{
if(!pret[i])
{
q.push(i);
pret[i] = pret[x] + 1;
d = pret[i];
u = i;
}
}
q.pop();
}
}
int main()
{
int N;
f>>N;
int x,y;
while(in>>x>>y)
{
a[x].push_back(y);
a[y].push_back(x);
}
bfs(1);
bfs(u);
g<<d<<"\n";
return 0;
}