uva 567 risk
来源:互联网 发布:css3动画和js动画 编辑:程序博客网 时间:2024/04/30 16:17
#include <iostream>
#include <cstdio>
#include <memory.h>
using namespace std;
const int MAX=25;
struct Vertex{
int num,dir;
};
int map[MAX][MAX],vis[MAX],
num,ttt,c,start,end;
Vertex q[50],v,t;
void bfs(){
bool findFlag=0;
int front=1,rear=2,ans=0;
q[front].num=start;
q[front].dir=0;
vis[start]=1;
while(front<rear&&!findFlag){
v=q[front++];
for(int i=1;i<=20;i++){
if(map[v.num][i]&&!vis[i]){
if(i==end){
ans=v.dir+1;
findFlag=1;
break;
}
t.num=i;
t.dir=v.dir+1;
vis[i]=1;
q[rear++]=t;
}
}
}
printf("%2d to %2d: %d/n",start,end,ans);
}
int main()
{
freopen("i.txt","r",stdin);
int caseNum=1;
while(cin>>num){
memset(map,0,sizeof(map));
for(int i=0;i<num;i++){
cin>>ttt;
map[1][ttt]=map[ttt][1]=1;
}
for(int i=2;i<=19;i++){
cin>>num;
while(num--){
cin>>ttt;
map[i][ttt]=map[ttt][i]=1;
}
}
cout<<"Test Set #"<<caseNum++<<endl;
cin>>c;
//cout<<c<<endl;
while(c--){
cin>>start>>end;
//cout<<start<<" "<<end<<endl;
memset(vis,0,sizeof(vis));
bfs();
}
cout<<endl;
}
return 0;
}
简单的bfs
- uva 567 risk
- UVA 567 - Risk
- UVA 567 risk FLOYD
- uva 567 Risk
- UVA 567 - Risk
- UVa 567 - Risk
- UVa 567 Risk 解答
- Uva 567 - Risk
- UVa 567 - Risk
- UVa 567: Risk
- UVA - 567 Risk
- UVA 567 - Risk (floyd)
- UVa 567 - Risk(Floyd)
- UVa 567 - Risk
- Risk - UVa 567 Floyd
- UVA - 567 Risk
- UVa 567 - Risk 翻译
- UVA 567 - Risk
- quake3使用指南
- 使用VC++使用开发Web服务(ISAPI extension - mod_gsoap.dll)1
- 菜鸟程序员之不认识的符号
- 使用VC++使用开发Web服务(ISAPI extension - mod_gsoap.dll) 2
- 管道、进程及其他
- uva 567 risk
- 新的陆航,启程!
- 自已作的屏保程序
- 续:minis3c2440嵌入式开发板学习之u-boot移植(二)
- android之ImageView
- Quake3引擎
- 字符串类型转换
- Java工具类学习笔记
- 用C画正弦曲线