Pagini recente » Cod sursa (job #1447210) | Cod sursa (job #1266895) | Cod sursa (job #716518) | Cod sursa (job #2823481) | Cod sursa (job #723992)
Cod sursa(job #723992)
#include<fstream>
#include<vector>
#include<bitset>
#define pb push_back
using namespace std;
const int maxn=400100;
int n,m,c=0,i;
vector<int>A[maxn];
bitset<maxn>viz;
ifstream f("dfs.in");
ofstream g("dfs.out");
void citire ()
{
int x,y,i;
f>>n>>m;
for(i=1;i<=m;i++)
{
f>>x>>y;
A[x].pb(y);
A[y].pb(x);
}
f.close();
}
void df(int nod)
{
int i,nr_vecini;
viz[nod]=1;
nr_vecini=A[nod].size();
for(i=0;i<nr_vecini;i++)
if(!viz[A[nod][i]])
df(A[nod][i]);
}
int main()
{
citire();
for(i=1;i<=n;i++)
if(!viz[i])
{
df(i);
c++;
}
g<<c;
return 0;
}