Pagini recente » Cod sursa (job #261560) | Cod sursa (job #2901385) | Cod sursa (job #2277458) | Cod sursa (job #1401435) | Cod sursa (job #2322143)
#include <fstream>
#include <vector>
using namespace std;
vector <int> graf[100002];
int viz[100002];
int n,m,a,b,j,i,c;
void dfs(int nod)
{
viz[nod]=1;
for(int i=0;i<graf[nod].size();i++)
{
if(viz[graf[nod][i]]==0)
dfs(graf[nod][i]);
}
}
int main()
{
ifstream in("dfs.in");
ofstream out("dfs.out");
in>>n>>m;
for(int i=1;i<=m;i++)
{
in>>a>>b;
graf[a].push_back(b);
graf[b].push_back(a);
}
c=0;
for(int j=1;j<=n;j++)
{
if(!viz[j])
{
c++;
dfs(j);
}
}
out<<c;
return 0;
}