Is It A Tree?(hdu132并查集)
来源:互联网 发布:java中图片上传 编辑:程序博客网 时间:2024/05/22 03:32
题意:给你一些点的关系,判断他们能否组成一棵树
组成树的条件
1.根节点只有一个。
2.不能有环。
在合并的时候判断环,合并完成后,遍历每个节点看其父亲是否相同,都相同说明只有一个节点,否则不是树。
#include<iostream>#include<cstdio>#include<cstring>#include<algorithm>using namespace std;int father[100000];int f[100000];int ff[100000];int flag = 0;void Make_set(int n){ int i; for(i = 0; i < n; i++) { father[i] = i; }}int Find_set(int x){ if(x != father[x]) { father[x] = Find_set(father[x]); } return father[x];}void Union(int a,int b){ int x = Find_set(a); int y = Find_set(b); if(x == y) { flag = 1; return ; } else { father[y] = x; }}int main(){ int a,b,cas = 1; while(scanf("%d%d",&a,&b) != EOF) { Make_set(100000); if(a < 0 && b < 0) { break; } else { flag = 0; Union(a,b);ff[a] = 1,ff[b] = 1; int i; int sum = 1; while(scanf("%d%d",&a,&b) != EOF) { if(a == 0 && b == 0) break; ff[a] = 1,ff[b] = 1; Union(a,b);sum++; } memset(f,0,sizeof(f)); printf("Case %d ",cas++); if(flag) { printf("is not a tree.\n"); } else { int i,count = 0; for(i = 0; i < 100000; i++) { if( ff[i] && !f[Find_set(i)]) { f[Find_set(i)] = 1; count++; } if(count == sum ) break; } if(count > 1) printf("is not a tree.\n"); else printf("is a tree.\n"); } } } return 0;}
- Is It A Tree?(hdu132并查集)
- 【并查集】Is it a tree?
- 【并查集】Is it A Tree?
- Is It A Tree?(并查集)
- Is It A Tree? (并查集)
- Is It A Tree? 并查集
- Is It A Tree?(并查集)
- 【并查集】hdu 1325 Is It A Tree? 或 poj 1308 Is It A Tree?
- HDU1325 Is It A Tree? + POJ1308 Is It A Tree?【并查集】
- POJ 1308-Is It A Tree 并查集
- HDU 1325 Is It A Tree?(并查集)
- Is It A Tree?(并查集)
- POJ1308--并查集--Is It A Tree?
- POJ 1308 Is It A Tree? (并查集)
- Is It A Tree?--POJ1308--并查集
- hdu 1325 Is It A Tree?(并查集)
- pku 1308 Is It A Tree?(并查集)
- 【图论05】并查集 1003 Is It A Tree?
- php curl基本操作详解
- php curl 伪造IP来源的实例代码
- MSVCRTD.lib(crtexew.obj) : error LNK2019: unresolved external symbol _WinMain@16
- 坑爹的通讯录 有些时候手机创建不了通讯录群
- 粗糙集理论应用的实例
- Is It A Tree?(hdu132并查集)
- 装饰设计模式
- c笔记
- Segment set(hdu1558并查集+计算机和)
- Autobook中文版(七)—9.一个小的GNU Autotools项目
- 一般树的存储
- 音标学习
- SQL查询前10条记录(SqlServer/mysql/oracle/sybase)[语法分析] (转)
- Nutch 框架