Pagini recente » Cod sursa (job #780307) | Cod sursa (job #390873) | Cod sursa (job #49570) | Cod sursa (job #425159) | Cod sursa (job #634854)
Cod sursa(job #634854)
#include <iostream>
#include<vector>
#include<iterator>
#include<stdio.h>
using namespace std;
vector<int> lista[100];
int sel[100];
void df(int k)
{
sel[k]=1; // marcam ca vizitat
cout<<k<<" ";
for(int i = 0; i < lista[k].size(); i++)
if(sel[ lista[k][i] ]==0 )
df(lista[k][i]);
}
int main()
{ int j,n,k,fiu,nrf;
freopen("dfs.in","r",stdin);
freopen("dfs.out","w",stdout);
cin>>n>>m; //"nr noduri:";
// for(k=1;k<=n;k++)
// sel[k]=0;
cin>>n >> m; //"nr noduri:";
for(k=1;k<=m;k++) {
cin>>a>>b;
lista[a].push_back(b);
lista[b].push_back(a);
}
for(k=1;k<=n;k++) {
/*cout<<k<<": ";
for( int j = 0; j < lista[k].size(); ++j)
cout<<lista[k][j]<<" ";
cout<<endl; */
}
int nr = 0;
for(j=1;j<=n;j++)
if(sel[j]==0){ df(j); nr++;}
cout<<nr;
/*
cout<<endl<<endl;
for(k=1;k<=n;k++)
cout<<sel[k]<<" ";*/
}