Pagini recente » Cod sursa (job #2364739) | Cod sursa (job #1107867) | Cod sursa (job #3244538) | Cod sursa (job #2045515) | Cod sursa (job #359996)
Cod sursa(job #359996)
#include<stdio.h>
#include<vector>
using namespace std;
vector <int> v[100005];
long n,k,viz[100005],nr,a,b;
void recur ( int poz)
{
int i,q;
if(viz[poz]==1)
return;
viz[poz]=1;
q=v[poz].size();
for(i=0;i<q;i++)
if(viz[v[poz][i]]==0)
recur(v[poz][i]);
}
int main ()
{
int i;
freopen( "dfs.in" , "r" , stdin);
freopen( "dfs.out" , "w" , stdout);
scanf("%ld%ld",&n,&k);
for(i=1;i<=k;i++)
{
scanf("%ld%ld",&a,&b);
v[a].push_back(b);
v[b].push_back(a);
}
for(i=1;i<=n;i++)
{
if(viz[i]==0)
{
nr++;
recur(i);
}
}
printf("%ld",nr);
return 0;
}