Pagini recente » Cod sursa (job #1065708) | Cod sursa (job #2686830) | Cod sursa (job #1531318) | Cod sursa (job #1482676) | Cod sursa (job #592431)
Cod sursa(job #592431)
#include <fstream>
#include <cstring>
#include <vector>
#define MAX 100001
using namespace std;
int N,sol=0;
int use[MAX];
vector <int> v[MAX];
inline void Read()
{
int M,x,y;
ifstream in;
in.open("dfs.in");
in>>N>>M;
for(;M;--M)
{
in>>x>>y;
v[x].push_back(y);
v[y].push_back(x);
}
in.close();
}
inline void df(int nod)
{
vector <int>::iterator it;
use[nod]=1;
for(it=v[nod].begin();it!=v[nod].end();it++)
if(!use[*it]) df(*it);
}
inline void DFS()
{
for(int i=1;i<=N;i++)
if(!use[i])
{
df(i);
sol++;
}
}
inline void Write()
{
ofstream out;
out.open("dfs.out");
out<<sol<<'\n';
out.close();
}
int main()
{
Read();
DFS();
Write();
return 0;
}