#include <bits/stdc++.h>
using namespace std;
vector<long long int> adj[100000];
long long int ans;
long long int bfs(long long int u, long long int p) {
  long long int s = 0, i;
  for (i = 0; i < adj[u].size(); i++) {
    if (adj[u][i] != p) {
      s += bfs(adj[u][i], u);
    }
  }
  if (s % 2 == 1) ans++;
  return s + 1;
}
int main() {
  long long int n, i;
  cin >> n;
  ans = -1;
  if (n % 2 == 1) {
    cout << "-1" << endl;
    return 0;
  }
  for (i = 0; i < n - 1; i++) {
    long long int u, v;
    cin >> u >> v;
    u--;
    v--;
    adj[u].push_back(v);
    adj[v].push_back(u);
  }
  bfs(0, -1);
  cout << ans;
  return 0;
}
