#include <bits/stdc++.h>
using namespace std;
#define int long long
const int M = 3e5 + 1;
vector<int> nei[M];
int dp[M],dep[M];
void dfs(int u,int p=0)
{
	for (int i:nei[u])
		if (i!=p)
		{
			dp[i]=dp[u]+nei[u].size()-1,dep[i]=dep[u]+1;
			dfs(i,u);
		}
}
signed main()
{
	ios::sync_with_stdio(0);
	cin.tie(NULL), cout.tie(NULL);
	
	int n;
	cin>>n;
	for (int i=1;i<n;i++)
	{
		int u,v;
		cin>>u>>v;
		nei[u].push_back(v);
		nei[v].push_back(u);
	}
	dp[1]=1;
	dfs(1);
	int ans=0;
	for (int i=1;i<=n;i++)
		ans=max(ans,(int)nei[i].size()-(i!=1));
	cout<<ans<<endl;
	
	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... |