#include <bits/stdc++.h>
using namespace std;
const int MAX_N = 300000;
int n, u, v, sol;
int f[MAX_N+5], p[MAX_N+5], l[MAX_N+5];
vector<int> edge[MAX_N+5];
inline void dfs(int nod, int prv){
l[nod] = l[prv] + 1;
for(auto nxt : edge[nod])
if(nxt != prv)
dfs(nxt, nod);
}
int main (){
ios_base::sync_with_stdio(false);
cin.tie(nullptr), cout.tie(nullptr);
cin>>n;
for(int i=1; i < n; i++){
cin>>u>>v;
edge[u].push_back(v);
edge[v].push_back(u);
}
l[0] = -1;
dfs(1, 0);
sol = (int)edge[1].size();
for(int i=2; i<=n; i++)
sol = max(sol, (int)edge[i].size()-1-l[i]);
cout<<sol;
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... |