hdu 1272 小希的迷宫
来源:互联网 发布:用c语言编写一个图形 编辑:程序博客网 时间:2024/05/29 10:19
题目:http://acm.hdu.edu.cn/showproblem.php?pid=1272
是中文题啊,所以题意很清晰,仔细阅读就可以啦
代码如下:
<span style="font-size:12px;"></span>
<span style="font-size:12px;">#include<cstdio></span>
<span style="font-size:12px;">#include<cstring></span>
<span style="font-size:12px;">#include<cmath></span>
<span style="font-size:12px;">#include<algorithm></span>
<span style="font-size:12px;">using namespace std;</span>
<span style="font-size:12px;">#define N 1000005int pre[N],a[N],b[N];int flag,ans;int find(int x){ return pre[x]==x?x:find(pre[x]);} void join(int x,int y){ int fx=find(x); int fy=find(y); if(fx!=fy) pre[fx]=fy; else flag=1;}int main(){ int i,k,m; while(~scanf("%d%d",&a[1],&b[1])) { ans=-1; if(a[1]==-1 && b[1]==-1) break; if(a[1]==0 && b[1]==0) printf("Yes\n"); if(a[1]>ans) ans=a[1]; //ans统计点个数 if(b[1]>ans) ans=b[1]; k=2; while(~scanf("%d%d",&a[k],&b[k])) { if(a[k]==0 && b[k]==0) break; if(a[k]>ans) ans=a[k]; if(b[k]>ans) ans=b[k]; k++; } for(i=1;i<=ans;i++) pre[i]=i; flag=0; for(i=1;i<k;i++) join(a[i],b[i]); if(flag) printf("No\n"); else { m=find(a[1]); for(i=1;i<k;i++) { if(find(a[i])!=m||find(b[i])!=m) { flag=1;break; } } if(flag) printf("No\n"); else printf("Yes\n"); } } return 0;}</span>
0 0
- 小希的迷宫 hdu 1272
- HDU 1272 小希的迷宫
- hdu 1272 小希的迷宫
- hdu 1272 小希的迷宫
- hdu 1272 小希的迷宫
- HDU-1272-小希的迷宫
- HDU 1272 小希的迷宫
- [tree]hdu 1272 小希的迷宫
- HDU 1272 小希的迷宫
- Hdu 1272 小希的迷宫
- HDU-1272:小希的迷宫
- HDU 1272 小希的迷宫
- hdu 1272 小希的迷宫
- hdu 1272 小希的迷宫
- HDU 1272 小希的迷宫
- HDU 1272 小希的迷宫
- hdu 1272 小希的迷宫
- hdu 1272 小希的迷宫
- 有关于Activity的生命周期
- Java统计无交集区间的最多个数(运用:如一天之内预约最多的客户)
- 运算符优先级
- android动态加载已安装和未安装的apk资源
- 在安卓上使用RxJava
- hdu 1272 小希的迷宫
- leetcode_Number of 1 Bits
- java.lang.OutOfMemoryError: PermGen space及其解决方法
- 大巧不工Web前端设计修炼之道——(7)让你的设计更加完美——优化技巧和最佳实践
- hdu 3371 Connect the Cities(最小生成树kruskal)
- ZOJ3623 Battle Ships (完全背包)
- UVA11235
- char varchar varchar2 的区别
- codeforces 294 div2.C