Pagini recente » Cod sursa (job #1749612) | Cod sursa (job #1549269) | Cod sursa (job #966502) | Cod sursa (job #2164232) | Cod sursa (job #2818934)
#include <fstream>
#include <vector>
#define ll long long
using namespace std;
ifstream cin ("dfs.in");
ofstream cout ("dfs.out");
struct element
{
bool seen;
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);
}
for (i=1;i<=n;++i)
{
if (!x[i].sz.empty())
{
dfs(i);
break;
}
}
ll db=0;
for (i=1;i<=n;++i) if (x[i].seen) db++;
cout<<db<<"\n";
return 0;
}