Pagini recente » Cod sursa (job #1828165) | Cod sursa (job #960970) | Cod sursa (job #1819789) | Cod sursa (job #1522017) | Cod sursa (job #2818937)
#include <fstream>
#include <vector>
#define ll long long
using namespace std;
ifstream cin ("dfs.in");
ofstream cout ("dfs.out");
struct element
{
bool seen=false;
vector <ll> sz;
};
vector <element> x;
ll n,m,i,a,b;
void dfs (ll act)
{
x[act].seen=true;
for (auto e:x[act].sz)
{
if (!x[e].seen) dfs(e);
}
}
int main()
{
cin>>n>>m;
x.resize(n+1);
for (i=1;i<=m;++i)
{
cin>>a>>b;
x[a].sz.push_back(b);
x[b].sz.push_back(a);
}
ll db=0;
for (i=1;i<=n;++i)
{
if (!x[i].seen)
{
db++;
dfs(i);
// break;
}
}
// for (i=1;i<=n;++i) if (x[i].seen) db++;
cout<<db<<"\n";
return 0;
}