Pagini recente » Cod sursa (job #1392401) | Cod sursa (job #2620451) | Cod sursa (job #246686) | Cod sursa (job #304395) | Cod sursa (job #598148)
Cod sursa(job #598148)
#include <fstream>
#include <vector>
#include <string.h>
#define max_n 100001
#define pb push_back
using namespace std;
int n,m,i;
vector <int> g[max_n];
vector <int>::iterator it;
bool ok[max_n];
int nrc,x,y;
ifstream in("dfs.in");
ofstream out("dfs.out");
void DF(int x) {
vector <int>::iterator it;
ok[x]=true;
for (it=g[x].begin(); it!=g[x].end(); it++)
if (!ok[*it]) DF(*it);
}
int main()
{
in >> n >> m;
for (i=1; i<=m; i++) {
in >> x >> y;
g[x].pb(y);
g[y].pb(x);
}
memset(ok,false,sizeof(ok));
nrc=0;
for (i=1; i<=n; i++) {
if (!ok[i]) {
nrc++;
DF(i);
}
}
out << nrc << '\n';
in.close();
out.close();
return 0;
}