Pagini recente » Monitorul de evaluare | Istoria paginii runda/20_februarie_simulare_oji_2024_clasa_10/clasament | Clasament w1 | Arhiva de probleme | Cod sursa (job #359991)
Cod sursa(job #359991)
#include<stdio.h>
#include<vector>
using namespace std;
vector <int> v[100001];
long n,k,viz[100001],nr,a,b;
void recur ( int poz)
{
int i;
if(viz[poz]==1)
return;
viz[poz]=1;
for(i=1;i<=v[poz].size();i++)
if(viz[v[poz][i]]==0)
recur(v[poz][i]);
}
int main ()
{
int i;
freopen( "dfs.in" , "r" , stdin);
freopen( "dfs.out" , "w" , stdout);
scanf("%ld%ld",&n,&k);
for(i=1;i<=n;i++)
{
scanf("%ld%ld",&a,&b);
v[a].push_back(b);
v[b].push_back(a);
}
for(i=1;i<=n;i++)
{
if(viz[i]==0)
{
nr++;
recur(i);
}
}
printf("%ld",nr);
return 0;
}