Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <bits/stdc++.h>
- using namespace std;
- typedef long long ll;
- int n;
- vector<int> adj[100007];
- int coun=1;
- int dfs(int x,int pa)
- {
- int ans=0;
- for(int i=0;i<adj[x].size();i++)
- {
- int y=adj[x][i];
- if(y==pa)continue;
- coun=1-coun;
- // if(coun)cout<<x<<' '<<y<<endl;
- ans+=dfs(y,x)+coun;
- coun=1-coun;
- }
- return ans;
- }
- int main()
- {
- cin>>n;
- if(n==1)
- {
- cout<<0;
- return 0;
- }
- for(int i=1;i<n;i++)
- {
- int x,y;
- cin>>x>>y;
- adj[x].push_back(y);
- adj[y].push_back(x);
- }
- int w=0,v=1;
- for(int i=1;i<=n;i++)
- {
- if(adj[i].size()>w)
- {
- w=adj[i].size();
- v=i;
- }
- }
- // cout<<v<<'\n';
- cout<<1+dfs(v,0);
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement