Pagini recente » Cod sursa (job #2975166) | Cod sursa (job #678131) | Cod sursa (job #976634) | Cod sursa (job #78677) | Cod sursa (job #2032185)
#include <iostream>
#include <fstream>
#include <vector>
#define NM 100002
using namespace std;
vector <int> gr[NM];
int n, m, i, a, b, v[NM], nrc, tv;
void dfs(int n)
{
v[n] = 1;
tv++;
for(auto j:gr[n])
if(v[j] == 0)
dfs(j);
}
int main()
{
ifstream fin ("dfs.in");
ofstream fout ("dfs.out");
fin >> n >> m;
for(i = 1; i <= m; i++)
{
fin >> a >> b;
gr[a].push_back(b);
gr[b].push_back(a);
}
while(tv < n)
{
for(i = 1; v[i]; i++);
dfs(i);
nrc++;
}
fout << nrc;
return 0;
}