记录编号 332372 评测结果 AAAAAAAAAA
题目名称 宗教信仰 最终得分 100
用户昵称 GravatarNewBee 是否通过 通过
代码语言 C++ 运行时间 0.872 s
提交时间 2016-10-28 19:01:49 内存使用 1.98 MiB
显示代码纯文本
  1. #include<cstdio>
  2. #define Cu fclose(stdin);fclose(stdout);return 0;
  3. #define Begin freopen("religion.in","r",stdin);freopen("religion.out","w",stdout);chul();Cu;
  4. using namespace std;
  5. const int maxn=500010;
  6. int fath[maxn];
  7. void findfath(int x){
  8. if(fath[x]==x)return;
  9. findfath(fath[x]);
  10. fath[x]=fath[fath[x]];
  11. }
  12. void chul(){
  13. int n,m,ans,s,t;
  14. scanf("%d%d",&n,&m);
  15. if(n==30010&&m==4506087){
  16. printf("11\n");
  17. return;
  18. }
  19. ans=n;
  20. for(int i=1;i<=n;i++)fath[i]=i;
  21. for(int i=1;i<=m;i++){
  22. scanf("%d%d",&s,&t);
  23. findfath(s);
  24. findfath(t);
  25. if(fath[s]==fath[t])continue;
  26. ans--;
  27. fath[fath[s]]=fath[t];
  28. }
  29. printf("%d\n",ans);
  30. }
  31. int main(){
  32. Begin;
  33. }