#include #define rep(i,n) for(int i=0;i ; const ll INF = 1e18; const int MOD = 1000000007; int n = 100005; vector> tree(n,vector()); int mx = 0,id = 0; void dfs(int i,int p=-1,int d=0){ if(d > mx) mx = d,id = i; for(int c:tree[i]){ if(c == p) continue; dfs(c,i,d+1); } } int main(){ cin >> n; rep(i,n-1){ int a,b; cin >> a >> b; --a;--b; tree[a].push_back(b); tree[b].push_back(a); } dfs(0); dfs(id); cout << n-1-mx << endl; return 0; }