#include <bits/stdc++.h>
using namespace std;
template <typename T>
inline void in(register T& a) {
  register char c = getchar();
  register T x = 0, f = 1;
  while (!isdigit(c)) {
    if (c == '-') f = -1;
    c = getchar();
  }
  while (isdigit(c)) {
    x = (x << 1) + (x << 3) + c - '0';
    c = getchar();
  }
  a = x * f;
}
int n, x, y, tot, ans, cnt, nex[400010], dep[400010], to[400010], vis[400010],
    id[400010], dis[400010], dist[400010], head[400010], f[400010], g[400010],
    h[400010];
inline void add(int u, int v) {
  to[++cnt] = v;
  nex[cnt] = head[u];
  head[u] = cnt;
}
inline void dfs(int now, int pre, int cnt) {
  dis[now] = cnt;
  int pd = 0;
  for (register int i = head[now]; i; i = nex[i]) {
    int v = to[i];
    if (v == pre) continue;
    dfs(v, now, cnt + 1);
    if (dis[v] > 2) pd = 1, dis[now] = 1, dis[pre] = 2;
  }
  ans += pd;
}
int main() {
  in(n);
  for (register int i = 1; i <= n - 1; i++) in(x), in(y), add(x, y), add(y, x);
  dfs(1, 1, 0);
  printf("%d\n", ans);
  return 0;
}
