Pagini recente » Cod sursa (job #2983521) | Cod sursa (job #1047190) | Cod sursa (job #2588568) | Cod sursa (job #3155592) | Cod sursa (job #153133)
Cod sursa(job #153133)
#include <stdio.h>
#include <vector>
#define maxn 100010
using namespace std;
vector <int> a[maxn];
int n,m,i,j,k,p,q;
int fol[maxn];
void dfs(int k)
{
int t=a[k].size(),i;
for (i=0; i<=t-1; i++)
if (fol[a[k][i]]==0)
{
fol[a[k][i]]=1;
dfs(a[k][i]);
}
}
int main()
{
freopen("dfs.in","r",stdin);
freopen("dfs.out","w",stdout);
scanf("%d %d",&n,&m);
for (i=1; i<=m; i++)
{
scanf("%d %d",&p,&q);
a[p].push_back(q);
a[q].push_back(p);
}
k=0;
for (i=1; i<=n; i++)
if (fol[i]==0)
{
k++;fol[i]=1;
dfs(i);
}
printf("%d\n",k);
return 0;
}