小希的迷宫
来源:互联网 发布:主域名跳转到二级域名 编辑:程序博客网 时间:2024/04/30 11:22
地址http://acm.hdu.edu.cn/showproblem.php?pid=1272
并查集 大写Y,和N
判断是否构成以环,是否是一条路
#include<stdio.h>#define FMAX 100005int father[FMAX],point[FMAX];int find(int x);void Make_set();main(){ int a,b,max=-1,p1,p2,flag=1,k=0,i; Make_set(); while(scanf("%d%d",&a,&b),a!=-1||b!=-1) { point[a]=1; point[b]=1; if(a>max) max=a;; if(b>max) max=b; if(max==0) { printf("Yes\n"); continue; } p1=find(a); p2=find(b); if(p1!=p2) father[p1]=p2; else { flag=0; } while(scanf("%d%d",&a,&b),a!=0||b!=0) { if(flag==0) continue; if(a>max) max=a;; if(b>max) max=b; point[a]=1; point[b]=1; p1=find(a); p2=find(b); if(p1!=p2) father[p1]=p2; else { flag=0; } } for(i=1;i<=max;i++) if(point[i]) if(father[i]==i) k++; if(k!=1) flag=0; if(flag) printf("Yes\n"); else printf("No\n"); Make_set(); k=0; flag=1; max=-1; } }void Make_set(){ int i; for(i=1;i<FMAX;i++) { father[i]=i; point[i]=0; }}int find(int x){ int r=x; while(father[r]!=r) r=father[r]; father[x]=r; return r;}
62ms 不知道该如何优化了、
- 小希的迷宫
- 小希的迷宫
- 小希的迷宫
- 小希的迷宫
- 小希的迷宫
- 小希的迷宫
- 小希的迷宫
- 小希的迷宫
- 小希的迷宫
- 小希的迷宫
- 小希的迷宫
- 小希的迷宫
- 小希的迷宫
- 小希的迷宫
- 小希的迷宫
- 小希的迷宫
- 小希的迷宫
- 小希的迷宫
- ADI Blackfin处理器的C语言编程与优化——内存Memory和Cache优化
- CPLD/FPGA/Verilog_如何写代码减少逻辑单元的使用数量
- 2012-05-07
- python的eclipse开发环境安装
- stdio.h&stdlib.h&string.h
- 小希的迷宫
- 设计模式C++描述----06.适配器(Adapter)模式
- CPLD/FPGA/Verilog_vga时序参考
- linux特殊符号大全
- .net 调用外部程序(不显示主窗口/控制台)
- [转译] 微软主动防御项目最新消息:将信息泄露的风险降到最低
- C# 支持拖放的TreeView控件,文件拖拽大全。
- CodeNow.Com:在线编写并实时测试代码
- 仿射变换