HDU1272
来源:互联网 发布:阿特金斯减肥法 知乎 编辑:程序博客网 时间:2024/04/29 01:06
//先记录下来。。暂时
#include<iostream>#include<string.h>using namespace std;int pre[100005],flag;int visit[100005];void init(){ int i; for(i=1;i<=100000;i++) pre[i]=i;}int find(int x){ if(pre[x]==x) return x; else return pre[x]=find(pre[x]);}void hbing(int x,int y){ x=find(x); y=find(y); if(x==y) return ; else pre[x]=y;}int main(){ int n,m; while(scanf("%d%d",&n,&m),n!=-1,m!=-1) { if(n==0&&m==0) { char c; scanf("%c",&c); scanf("%c",&c); cout<<"Yes"<<endl; } else { flag=0; init(); memset(visit,0,sizeof(visit)); visit[n]=1; visit[m]=1; hbing(n,m); int i,a,b,number=0,max1=-1; for(i=1;;i++) { scanf("%d%d",&a,&b); if(max1<a) max1=a; if(max1<b) max1=b; visit[a]=1; visit[b]=1; if(a==0&&b==0) { i--; break; } int x=find(a);//关键 int y=find(b);//关键 if(x==y) flag=1; else hbing(x,y); } for(i=1;i<=max1;i++) { if(visit[i]==1) { if(pre[i]==i) number++; } } char c; scanf("%c",&c); scanf("%c",&c); if(flag==1||number>=2) cout<<"No"<<endl; else cout<<"Yes"<<endl; } }}
0 0
- hdu1272
- hdu1272
- hdu1272
- hdu1272
- hdu1272
- HDU1272
- hdu1272
- hdu1272
- HDU1272
- hdu1272
- HDU1272
- hdu1272
- hdu1272
- hdu1272
- hdu1272
- HDU1272
- hdu1272
- hdu1272
- DIV自动滚动到最底部
- NekoHtml 解析内容时需要注意的地方
- 通向架构师的道路(第四天)之Tomcat性能调优-让小猫飞奔 .
- ubuntu下使用360随身wifi
- Microsoft100——002.链表中倒数第K个节点
- HDU1272
- Hello world
- 【DP】 ZOJ 3812 We Need Medicine
- 锤子手机(smartisan t1)如何查看mac地址
- Oracle rowid 详解
- 无需购买服务器,Android前端开发如何快速接入Bmob后端云
- 也谈暗时间
- 使用sp_addmessage添加自定义消息
- 找出数组中两个只出现一次的数字