#include #include #include #include #include #include #include using namespace std; typedef long long ll; const int maxn = 2e5 + 10; const int logn = 20; vector graph[maxn]; bool visited[maxn]; int res; void dfs(int node, int prev) { for(int i = 0; i < (int) graph[node].size(); i++) { int neigh = graph[node][i]; if(neigh != prev) { dfs(neigh, node); if(!visited[neigh] and !visited[node]) { visited[neigh] = true; visited[node] = true; ++res; } } } } int main() { ios_base::sync_with_stdio(false); int n; cin >> n; for(int i = 1; i < n; i++) { int a, b; cin >> a >> b; graph[a].push_back(b); graph[b].push_back(a); } res = 0; memset(visited, 0, sizeof visited); dfs(1, -1); cout << res << endl; return 0; } // 200000