Cod sursa(job #1434928)
Utilizator | Data | 11 mai 2015 17:48:49 | |
---|---|---|---|
Problema | Parcurgere DFS - componente conexe | Scor | 50 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.46 kb |
#include <fstream>
using namespace std;
int m,n,x,y,nr,i,a[1001][2002];
bool sel[1001];
ifstream f("dfs.in");
ofstream g("dfs.out");
void df(int x){
int i;
//g<<x;
sel[x]=true;
for(i=1;i<=n; ++i)
if(a[x][i]==1 && !sel[i]){
df(i);
}
}
int main()
{
f>>n>>m;
nr=0;
for(i=1;i<=m;++i){
f>>x>>y;
a[x][y]=a[y][x]=1;
}
for(i=1; i<=n; ++i){
if(sel[i]==false){df(i);nr++;}
}
g<<nr;
return 0;
}