Pagini recente » Cod sursa (job #258059) | Cod sursa (job #3269176) | Cod sursa (job #1687222) | Cod sursa (job #1515396) | Cod sursa (job #177107)
Cod sursa(job #177107)
#include <fstream>
#include <vector>
using namespace std;
int m, n;
vector<vector<int> > a;
bool s[100001];
void DF(int nod)
{
s[nod] = true;
int i, x = a[nod].size();
for (i = 0; i < x; i++)
if (!s[a[nod][i]]) DF(a[nod][i]);
}
int main()
{
int v1, v2, i;
ifstream fin("dfs.in");
fin >> n >> m;
a.resize(n+1);
for (; m; m--)
{
fin >> v1 >> v2;
a[v1].push_back(v2);
a[v2].push_back(v1);
}
fin.close();
int nr = 0;
for (i = 1; i <= n; i++)
if (!s[i])
{
++nr;
DF(i);
}
ofstream fout("dfs.out");
fout << nr << "\n";
fout.close();
return 0;
}