Pagini recente » Cod sursa (job #698496) | Cod sursa (job #1328300) | Cod sursa (job #3138799) | Cod sursa (job #1366412) | Cod sursa (job #500522)
Cod sursa(job #500522)
# include <stdio.h>
# include <string.h>
# include <vector>
using namespace std;
vector<int> a[100002];
vector<int>::iterator it;
int i,j,n,m,x,y,nr;
bool sel[100002];
void dfs (int x){
vector<int>::iterator it;
sel[x]=true;
for (it=a[x].begin(); it!=a[x].end(); it++){
if (!sel[*it]) dfs (*it);
}
}
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);
a[x].push_back(y);
a[y].push_back(x);
}
memset(sel,false,sizeof(sel));
nr=0;
for(i=1; i<=n; i++){
if (sel[i]==false){
nr++;
dfs(i);
}
}
printf ("%d \n",nr);
return (0);
}