N = int(input()) E = [[] for _ in range(N)] for _ in range(N-1): a,b = map(int, input().split()) E[a-1].append(b-1) E[b-1].append(a-1) from collections import deque def f(s): q = deque([s]) dist = [-1]*N dist[s] = 1 while q: temp = q.pop() for u in E[temp]: if dist[u] >= 0: continue dist[u] = dist[temp]+1 q.append(u) return dist for i in range(N): if len(E[i]) == 1: dist1 = f(i) break num = 0 for i in range(N): if num < dist1[i]: num = dist1[i] idx = i dist2 = f(idx) num = max(num, max(dist2)) print(N-num)