Pagini recente » Cod sursa (job #2610710) | Cod sursa (job #911994) | Cod sursa (job #2934908) | Cod sursa (job #3143097) | Cod sursa (job #1129114)
#include<cstdio>
#include<vector>
#define Max 100005
using namespace std;
int k=0,i,j,n,m,x,y,L[Max];
bool viz[Max];
vector<int> v[Max];
void dfs(int nod)
{
viz[nod]=true;
for(j=0;j<L[nod];++j) dfs(v[nod][j]);
}
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",&x,&y);
v[x].push_back(y);
v[y].push_back(x);
}
for(i=1;i<=n;++i) L[i]=v[i].size();
for(i=1;i<=n;++i)
if(!viz[i])
{
++k;
dfs(i);
}
printf("%d\n",k);
return 0;
}