Pagini recente » Cod sursa (job #3207986) | Cod sursa (job #2830016) | Cod sursa (job #1797168) | Cod sursa (job #1700697) | Cod sursa (job #2424252)
#include <bits/stdc++.h>
using namespace std;
ifstream f("dfs.in");
ofstream g("dfs.out");
vector<int> viz;
int n, m, s,d,nr=0;
bool ok;
vector<int > a[100005];
void citire()
{
int x, y, i;
f >> n >>m;
for(i=0; i<=n; i++)
viz.push_back(0);
while(f>>x>>y)
{
a[x].push_back(y);
a[y].push_back(x);
}
}
void dfs(int X)
{
viz[X] = 1;
for(unsigned int itr =0 ; itr < a[X].size(); itr ++)
{
int temp=a[X][itr];
if( viz[temp] == 0) dfs(temp);
}
}
int main()
{
citire();
for( int i=1; i<=n; i++)
{
if(viz[i]==0)
{
dfs(i);
nr++;
}
}
g<<nr;
return 0;
}