n = int(input()) node = [[] for _ in range(n)] A = [-1] * n B = [0] * n C = [0] * n for _ in range(n-1): u, v = list(map(lambda x: int(x)-1, input().split())) node[u].append(v) node[v].append(u) B[u] += 1 B[v] += 1 if n == 2: print(1); exit() S = [i for i in range(n) if B[i] == 1] for s in S: A[s] = 0 ans = 0 while S: now = S.pop() if A[now] == -1: if not len(node[now]) % 2: if C[now] * 2 > len(node[now]): pass else: ans += 1 A[now] = 1 else: if C[now] * 2 > len(node[now]): A[now] = 1 elif C[now] * 2 + 1 == len(node[now]): A[now] = 0 else: A[now] = 1 ans += 1 for nxt in node[now]: if B[nxt]: B[now] -= 1 B[nxt] -= 1 if A[now] == 1: C[nxt] += 1 if not B[nxt] - 1: S.append(nxt) print(ans)