import sys sys.setrecursionlimit(100050) def dfs(x, p): a = 1 b = 0 for y in E[x]: if y != p: dfs(y, x) a += dp[y][1] b += max(dp[y]) dp[x] = [a, b] N = int(input()) E = [[] for _ in range(N)] for i in range(N - 1): u, v = map(int, input().split()) u -= 1 v -= 1 E[u].append(v) E[v].append(u) # dp # 1項目その頂点を切らない場合 # 2項目その頂点を切る場合 dp = [[0, 0] for _ in range(N)] dfs(0, -1) print(max(dp[0]))