Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <bits/stdc++.h>
- #define pb push_back
- using namespace std;
- const int MAX=100009;
- vector <int> adj[MAX];
- bool vis[MAX];
- int c=0;
- int dfs(int v){
- vis[v]=1;
- int temp=0;
- for (int i=0;i<adj[v].size();i++){
- if (!vis[adj[v][i]]){
- if (dfs(adj[v][i])%2==0) c++;
- else temp+=adj[v][i];
- }
- }
- return temp+1;
- }
- int main(){
- int n,m;
- scanf("%d%d",&n,&m);
- memset(vis,0,sizeof(vis));
- for (int i=0;i<m;i++){
- int x,y;
- scanf("%d%d",&x,&y);
- adj[x].pb(y);
- adj[y].pb(x);
- }
- c += dfs(1) % 2 == 0;
- cout<<c<<endl;
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement