Pagini recente » Rating DocTordoi (4afterfun) | Rating Andrei Dragomir (andreileon) | Cod sursa (job #1999030) | Rating Rafael (xpilov) | Cod sursa (job #1897075)
#include <fstream>
#include<vector>
using namespace std;
ifstream fin("dfs.in");
ofstream fout("dfs.out");
int n,m,numar=0,v[1000];
vector<int>a[10001],w;
void cit()
{int i,j,k;
fin>>n>>m;
for(k=1;k<=m;k++)
{
fin>>i>>j;
a[i].push_back(j);
a[j].push_back(i);
}
}
void dfs(int k)
{ int i;
v[k]=1;
for(i=0;i<a[k].size();i++)
if(v[a[k][i]]==0)
dfs(a[k][i]),w.push_back(a[k][i]);
}
void conex()
{
int i;
for(i=1;i<=n;i++)
if(v[i]==0)
{
numar++;
dfs(i);
}
}
int main()
{
cit();
conex();
fout<<numar;
return 0;
}