Pagini recente » Cod sursa (job #863538) | Cod sursa (job #2679236) | Cod sursa (job #1928983) | Cod sursa (job #1228644) | Cod sursa (job #1539580)
#include <iostream>
#include <fstream>
#include <vector>
using namespace std;
ifstream in("dfs.in");
ofstream out("dfs.out");
vector<int> v[100010];
bool viz[100010];
int i, sol=0, p, q,m,n;
void dfs(int x)
{
viz[x]=1;
for(int i=0;i<(int)v[x].size();i++)
if(!viz[v[x][i]])
{
dfs(v[x][i]);
}
}
int main()
{
in>>n>>m;
for(i=1;i<=m;i++)
{
in>>p>>q;
v[p].push_back(q);
v[q].push_back(p);
}
for(i=1;i<=n;i++)
{
if(!viz[i]) {
dfs(i);
sol++;
}
}
out<<sol;
return 0;
}