Pagini recente » Cod sursa (job #585923) | Cod sursa (job #697888) | Cod sursa (job #1328660) | Cod sursa (job #68435) | Cod sursa (job #688246)
Cod sursa(job #688246)
#include<iostream>
#include<fstream>
#include<cstring>
using namespace std;
int viz[20],a[20][20],i,j,k,nr,n;
fstream f("dfs.in",ios::in),g("dfs.out",ios::out);
void citire(int a[20][20],int &n)
{f>>n;
while(f>>i>>j) a[i][j]=a[j][i]=1;f.close();}
void df(int nod)
{viz[nod]=1;
for(k=1;k<=n;k++)
if(a[nod][k]==1&&viz[k]==0)
df(k);
}
int main()
{citire(a,n);int ok;
nr=0;df(1);
memset (viz,0,sizeof(viz));
do{ok=0;for(j=1;j<=n;j++) if(viz[j]==0) {df(j); nr++;ok=1;}}
while(g==1);
g<<nr;
}