您的位置:首页 > 其它

HDU 1272 小希的迷宫

2011-07-28 10:21 302 查看
题目:http://acm.hdu.edu.cn/showproblem.php?pid=1272

方法一:

当你输入的x,y的根节点fx,fy相同时,说明已经可达,再连接就是有多余一条路径了。

迷宫应该只有一个集合,多余一个就不符合。

当直接输入00时,直接输出yes

代码:

View Code

#include<stdio.h>
#include<string.h>
int main()
{
bool s[100001];
int x,y,count,num,max,min;
while(scanf("%d%d",&x,&y)!=EOF)
{
memset(s,0,sizeof(s));
if(x==-1&&y==-1)
break;
if(x==0&&y==0)
{
printf("Yes\n");
continue;
}
count=0;
max=-1;
min=100001;
while(1)
{
s[x]=1;s[y]=1;
if(x>max)max=x;
if(y>max)max=y;
if(x<min)min=x;
if(y<min)min=y;
count++;
scanf("%d%d",&x,&y);
if(x==0&&y==0)
break;
}
for(num=0;min<=max;min++)
if(s[min])
num++;
if(count==num-1)
printf("Yes\n");
else
printf("No\n");
}
return 0;
}


  
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: