Pagini recente » Cod sursa (job #1763124) | Istoria paginii runda/gg1/clasament | Cod sursa (job #1848372) | Cod sursa (job #1694233) | Cod sursa (job #1786698)
#include <iostream>
#include <fstream>
#include <vector>
#define nmax 100005
using namespace std;
vector <int> G[nmax];
int viz[nmax],comp[nmax];
void dfs(int nod, int nr){
int it,y;
viz[nod]=1;
comp[nod]=nr;
for(it=0;it<G[nod].size();it++){
y=G[nod][it];
if(!viz[y])
dfs(y,nr);
}
}
int main()
{
int i,n,m,nr,x,y;
ifstream f("dfs.in");
ofstream g("dfs.out");
nr=0;
f >> n >> m;
for (i=1;i<=m;i++){
f >> x >> y;
G[x].push_back(y);
G[y].push_back(x);
}
for (i=1;i<=n;i++){
if (!viz[i]){
nr++;
dfs(i,nr);
}
}
g << nr;
}