#include <bits/stdc++.h>
using namespace std;
vector<vector<int>> v;
vector<int> depth;
int maxim = 1;
void bfs(int nod){
queue <int> q;
for(int i=0;i<v[nod].size();i++){
int newnod = v[nod][i];
if(depth[newnod]==0){
depth[newnod]=depth[nod]+1;
maxim = max(maxim,depth[newnod]);
q.push(newnod);
}
}
while(!q.empty()){
bfs(q.front());
q.pop();
}
}
int main() {
int n;
cin>>n;
v.resize(n+1);
depth.resize(n+1);
for(int i=1;i<=n-1;i++){
int a,b;
cin>>a>>b;
v[a].push_back(b);
v[b].push_back(a);
}
depth[1]=1;
bfs(1);
cout<<maxim;
}
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |