Pagini recente » Cod sursa (job #318755) | Cod sursa (job #529120) | Cod sursa (job #3158225) | Cod sursa (job #1276615) | Cod sursa (job #2372796)
#include <iostream>
#include <fstream>
#include <vector>
using namespace std;
int viz[100002];
vector<int>graph[100002];
void parcurgere_adancime(int nod)
{
viz[nod]=1;
int lim=graph[nod].size();
for(int i=0; i<lim; i++)
if(viz[graph[nod][i]]==0)
parcurgere_adancime(graph[nod][i]);
}
int main()
{
int n,m;
ifstream f("dfs.in");
ofstream g("dfs.out");
f>>n>>m;
int k=0;
for(int i=1; i<=m; i++)
{
int a,b;
f>>a>>b;
graph[a].push_back(b);
graph[b].push_back(a);
}
for(int i=1; i<=n; i++)
if(viz[i]==0)
{
parcurgere_adancime(i);
k++;
}
g<<k;
return 0;
}