#include <bits/stdc++.h>
using namespace std;
#define N 300005
vector<int>adj[N];
int dist[N];
void bfs(int i)
{
queue<int>Q;
Q.push(i);
while(!Q.empty())
{
const int s=Q.front();
Q.pop();
for(const auto v:adj[s])
{
if(dist[v]==0)
{
dist[v]=dist[s]+1;
Q.push(v);
}
}
}
}
int main()
{
int n;
cin>>n;
int x,y;
for(int i=1;i<n;i++)
{
cin>>x>>y;
adj[x].push_back(y);
adj[y].push_back(x);
}
dist[1]=1;
bfs(1);
dist[n+1]=0;
int maxim=1;
int cnt=1;
for(int i=3;i<=n+1;i++)
{
if(dist[i]==dist[i+1])cnt++;
else
{
maxim=max(cnt,maxim);
cnt=1;
}
}
cout<<maxim;
return 0;
}
# | 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... |