Pagini recente » Cod sursa (job #1168659) | Cod sursa (job #2316795) | Cod sursa (job #3210427) | Cod sursa (job #1978804) | Cod sursa (job #2446677)
#include <fstream>
#include <vector>
#include <bitset>
using namespace std;
ifstream fin ("dfs.in");
ofstream fout ("dfs.out");
vector <int> L[100005];
bitset <100005> viz;
int n, m;
void Read ()
{
fin >> n >> m;
int i, j;
while (m--)
{
fin >> i >> j;
L[i].push_back(j);
L[j].push_back(i);
}
}
void DFS (int x)
{
viz[x] = 1;
for (auto i : L[x])
if (!viz[i]) DFS(i);
}
void Write ()
{
int i, comp = 0;
for (i = 1; i <= n; i++)
if (!viz[i])
{
comp++;
DFS(i);
}
fout << comp << "\n";
fout.close();
}
int main()
{
Read();
Write();
return 0;
}