Pagini recente » Cod sursa (job #1249110) | Cod sursa (job #1985974) | Cod sursa (job #2157897) | Cod sursa (job #2351414) | Cod sursa (job #2491585)
#include <iostream>
#include <fstream>
#include <vector>
#include <algorithm>
#define NMAX 100000
using namespace std;
ifstream fin("dfs.in");
ofstream fout("dfs.out");
vector <int> G[NMAX+1];
int viz[NMAX+1],n,m,nrc=0;
void DFS(int nod) {
viz[nod]=1;
for(int i=0;i<G[nod].size();i++) {
int k=G[nod][i];
if(viz[k]==0)
DFS(k);
}
}
int main() {
fin>>n>>m;
int i,j;
for(int k=1;k<=m;k++) {
fin>>i>>j;
G[i].push_back(j);
G[j].push_back(i);
}
for(int i=1; i<=n; i++) {
if(viz[i]==0) {
nrc++;
DFS(i);
}
}
fout<<nrc;
return 0;
}