Pagini recente » Cod sursa (job #2276352) | Cod sursa (job #2147716) | Cod sursa (job #1486335) | Cod sursa (job #2298721) | Cod sursa (job #1424602)
#include <iostream>
#include <deque>
#include <vector>
#include <cstring>
#include <bitset>
#include <algorithm>
#define INF 1000010
#define ll long long
using namespace std;
int N, M, i, x, y, sol, viz[100010];
vector<int> V[100010];
void DFS(int X)
{
viz[X] = 1;
for(vector<int>::iterator it = V[X].begin(); it != V[X].end(); it++)
if(!viz[*it])
DFS(*it);
}
int main()
{
freopen("dfs.in","r",stdin);
freopen("dfs.out","w",stdout);
scanf("%d%d", &N, &M);
for(;M;--M)
{
scanf("%d%d", &x, &y);
V[x].push_back(y);
V[y].push_back(x);
}
for(i = 1; i <= N; i++)
{
if(!viz[i])
{
DFS(i);
sol = sol + 1;
}
}
printf("%d\n", sol);
return 0;
}