Pagini recente » Cod sursa (job #2423705) | Cod sursa (job #436006) | Cod sursa (job #2071426) | Cod sursa (job #433638) | Cod sursa (job #1027379)
#include <iostream>
#include <fstream>
#include <vector>
using namespace std;
ifstream fin("dfs.in");
ofstream fout("dfs.out");
vector <int> V[200001];
int n,m,cnt=0;
bool verif[200001]={false};
void dfs(int k);
int main()
{
fin>>n>>m;
int a,b;
for(int i=1;i<=m;i++){
fin>>a>>b;
V[a].push_back(b);
V[b].push_back(a);
}
for(int i=1;i<=n;i++)
if(verif[i]==false){
dfs(i);
cnt++;
}
fout<<cnt;
return 0;
}
void dfs(int k)
{
verif[k]=true;
for(int i=0;i<V[k].size();i++)
if(verif[V[k][i]]==false)
dfs(V[k][i]);
}