Pagini recente » Cod sursa (job #2601433) | Cod sursa (job #1755251) | Cod sursa (job #1628134) | Cod sursa (job #2882550) | Cod sursa (job #1017974)
#include<cstdio>
#include<vector>
#define N_MAX 100010
using namespace std;
vector <int> G[N_MAX];
bool sel[100010];
int sol=0,n,i;
inline void df(int x)
{
int i;
vector <int> :: iterator it;
for (it=G[x].begin();it<G[x].end();it++)
if (!sel[*it])
{
sel[*it]=true;
df(*it);
}
}
inline void load()
{
int x,y,i,m;
scanf("%d%d",&n,&m);
for (i=1;i<=m;i++)
{
scanf("%d%d",&x,&y);
G[x].push_back(y);
G[y].push_back(x);
}
}
int main()
{
freopen("dfs.in","r",stdin);
freopen("dfs.out","w",stdout);
load();
for (i=1;i<=n;i++)
if (!sel[i])
{
sol++;
df(i);
}
printf("%d\n",sol);
fclose(stdin);
fclose(stdout);
return 0;
}