Pagini recente » Cod sursa (job #1500316) | Cod sursa (job #1401054) | Cod sursa (job #730863) | Cod sursa (job #2624119) | Cod sursa (job #1438184)
#include<iostream>
#include<fstream>
#include<vector>
#define nmax 200000
using namespace std;
ifstream in("dfs.in");
ofstream out("dfs.out");
vector<int> g[nmax];
int m[nmax];
void dfs(int x){
{ m[x]=1;
for(vector<int>::iterator it=g[x].begin(); it!=g[x].end();it++)
if(m[*it]==0)
dfs(*it);
}
}
int main(){
int n,p,i,a,b,x,c=0;
in>>n>>p;
for(i=1;i<=p;i++)
{ in>>a>>b;
g[a].push_back(b);
g[b].push_back(a);
}
for(i=1;i<=n;i++) if(!m[i]) { dfs(i); c++; }
out<<c<<'\n';
return 0;
}