Pagini recente » Cod sursa (job #2151613) | Cod sursa (job #1054486) | Cod sursa (job #942219) | Cod sursa (job #1563097) | Cod sursa (job #3232931)
#include<bits/stdc++.h>
using namespace std;
ifstream F("dfs.in");
ofstream G("dfs.out");
#define Z 2048
int n,m,i,j,k,p=Z;
vector<int> a[100001];
bitset<100001> b;
char s[Z];
inline char A()
{
if(p==Z)
F.read(s,Z),p=0;
return s[p++];
}
int B()
{
char c;
int n=0;
for(c=A();isdigit(c);n=n*10+c-48,c=A());
return n;
}
void C(int i)
{
b[i]=1;
for(int j:a[i])
if(!b[j])
C(j);
}
int main()
{
for(n=B(),m=B();m--;i=B(),j=B(),a[i].push_back(j),a[j].push_back(i));
for(i=1;i<=n;++i)
if(!b[i])
C(i),++k;
return G<<k,0;
}