Pagini recente » Cod sursa (job #2821227) | Cod sursa (job #2775072) | Cod sursa (job #2760439) | Cod sursa (job #1045928) | Cod sursa (job #1323498)
#include <iostream>
#include <vector>
#include <fstream>
using namespace std;
ifstream f("dfs.in");
ofstream t("dfs.out");
vector <int> g[100001];
int m,n,use[100001];
void citit()
{
f>>m>>n;
for(int i=1;i<=n;i++)
{
int a,b;
f >> a >> b;
g[a].push_back(b);
g[b].push_back(a);
}
}
void dfs(int nod)
{
use[nod]=1;
for(int i=0;i<g[nod].size();i++)
{
int vecin=g[nod][i];
if(!use[vecin])
{
dfs(vecin);}
}
}
int main()
{
int s=0;
citit();
for(int i=1;i<=m;i++)
if(!use[i])
{dfs(i);
s++;}
t <<s;
return 0;
}