Pagini recente » Cod sursa (job #476399) | Cod sursa (job #2810851) | Cod sursa (job #519766) | Cod sursa (job #2593278) | Cod sursa (job #1041832)
#include <iostream>
#include <fstream>
using namespace std;
int n,m,x,y,l[100001][1001],k;
bool viz[100001];
void dfs(int i)
{
if(viz[i]==false)
{
viz[i]=true;
for(int j=1;j<=l[i][0];j++)
{
if(viz[l[i][j]]==false)
dfs(l[i][j]);
}
}
}
int main()
{
int i,j;
freopen("dfs.in","r",stdin);
freopen("dfs.out","w",stdout);
cin>>n>>m;
for(i=1;i<=m;i++)
{
cin>>x;
cin>>y;
l[x][0]++;
l[x][l[x][0]]=y;
l[y][0]++;
l[y][l[y][0]]=x;
}/*
for(i=1;i<=n;i++)
{
for(j=1;j<=l[i][0];j++)
cout<<l[i][j]<<" ";
cout<<"\n";
}*/
for(i=1;i<=n;i++)
{
if(!viz[i])
{
dfs(i);
k++;
}
}
cout<<k<<"\n";
return 0;
}