Pagini recente » Cod sursa (job #588908) | Borderou de evaluare (job #2279897) | Cod sursa (job #910023) | Cod sursa (job #2600059) | Cod sursa (job #2817471)
#include <bits/stdc++.h>
using namespace std;
int n,m,x,y,cnt=0;
bool viz[100005]={0};
vector <int> adj[100005];
static void dfs(int nod){
viz[nod]=1;
for(auto x:adj[nod])
if(!viz[x])
dfs(x);
}
int main()
{
freopen("dfs.in","r",stdin);
freopen("dfs.out","w",stdout);
scanf("%d %d ",&n,&m);
while(m--){
scanf("%d %d ",&x,&y);
adj[x].push_back(y);
adj[y].push_back(x);
}
for(int i=1;i<=n;++i)
if(!viz[i])
dfs(i),++cnt;
printf("%d",cnt);
}