Pagini recente » Cod sursa (job #1071535) | Borderou de evaluare (job #888939) | Cod sursa (job #3243861) | Cod sursa (job #309476) | Cod sursa (job #560001)
Cod sursa(job #560001)
#include <fstream>
using namespace std;
long a[10001][10001],n, vizitat[10001],m,nrc;
void citire()
{long x,y,i,j;
ifstream f("dfs.in");
f>>n>>m;
for(i=1;i<=m;i++)
{
f>>x>>y;
a[x][y]=a[y][x]=1;
}
f.close();
}
void dfs (int j)
{ long i;
vizitat[j]=1;
for (i=1;i<=n;i++)
if (vizitat[i]==0 &&a[i][j]==1 )
dfs (i);
}
int main()
{long i;
nrc=0;
citire();
for(i=1;i<=n;i++)
if (vizitat[i]==0) {nrc++; dfs(i);}
ofstream g("dfs.out");
g<<nrc;
g.close();
return 0;
}