Pagini recente » Cod sursa (job #230503) | Cod sursa (job #3145396) | Clasament Summer Challenge Unu | Cod sursa (job #561854) | Cod sursa (job #628892)
Cod sursa(job #628892)
# include <vector>
# include<stdio.h>
using namespace std;
vector <int> v[100010];
int i,n,x,y,m,nr;
bool viz[100010];
void df(int i)
{
viz[i]=true;
for ( vector <int> :: iterator it=v[i].begin(); it!=v[i].end(); it++)
{
if (viz[*it]==false)
df(*it);
}
}
int main()
{
freopen("dfs.in","r",stdin);
freopen("dfs.out","w",stdout);
scanf("%d %d\n",&m,&n);
for (i=1; i<=m; i++)
{
scanf("%d %d\n",&x,&y);
v[x].push_back(y);
v[y].push_back(x);
}
for (i=1; i<=n; i++)
viz[i]=false;
for (i=1; i<=n; i++)
if (viz[i]==false) { df(i); nr++; }
printf("%d\n",nr);
return 0;
}