Pagini recente » Cod sursa (job #817136) | Cod sursa (job #2947418) | Cod sursa (job #1946749) | Cod sursa (job #1092667) | Cod sursa (job #401721)
Cod sursa(job #401721)
#include<fstream>
#include<vector>
#define MaxN 100005
using namespace std;
ifstream fin("dfs.in");
ofstream fout("dfs.out");
vector<int> G[MaxN];
int i,n,m,x,y,viz[MaxN],k;
void dfs(int node)
{ vector<int>::iterator it;
viz[node]=true;
for(it=G[node].begin(); it!=G[node].end();it++)
if(viz[*it]==false)
dfs(*it);
}
int main()
{ fin>>n>>m;
for(i=1;i<=m;i++)
{ fin>>x>>y;
G[x].push_back(y);
G[y].push_back(x);
}
for(i=1;i<=n;i++)
if(viz[i]==false)
{ k++;
dfs(i);
}
fout<<k;
}