Pagini recente » Borderou de evaluare (job #1291224) | Borderou de evaluare (job #433547) | Borderou de evaluare (job #1289092) | Borderou de evaluare (job #807718) | Cod sursa (job #2412787)
#include <bits/stdc++.h>
#define N 100005
using namespace std;
ifstream in("darb.in");
ofstream out("darb.out");
vector<int> a[N];
queue<int>q;
int v[N];
int main(){
int n,i,x,y;
in>>n;
for(i=1; i<n; ++i){
in>>x>>y;
a[x].push_back(y);
a[y].push_back(x);
}
v[1]=-1;
q.push(1);
while(!q.empty()){
i=q.front();
for(auto it:a[i])
if(!v[it]){
v[it]=-1;
q.push(it);
}
q.pop();
}
v[i]=1;
q.push(i);
while(!q.empty()){
i=q.front();
for(auto it:a[i])
if(v[it]==-1){
v[it]=v[i]+1;
q.push(it);
}
q.pop();
}
out<<v[i];
return 0;
}