bfs最短路
2015-07-05 22:15
323 查看
6 5
1 1 0 1 1
1 0 1 1 1
1 0 1 0 0
1 0 1 1 1
1 1 1 0 1
1 1 1 1 1
#include<cstdio>
#include<cstring>
using namespace std;
const int maxn=100;
int maps[maxn][maxn];
int mark[maxn][maxn];
int queues[maxn*maxn];
int m,n;
void bfs()
{
int i=0,ps=0,j=0,sum=0,now=0;
queues[ps++]=0;
while(now<=ps)
{
if(i==0&&j==n-1)
break;
i=queues[now]/100;
j=queues[now++]%100;
if(i+1<m&&maps[i+1][j]==1&&mark[i+1][j]==0){
queues[ps++]=(i+1)*100+j;
mark[i+1][j]=1;
printf("%d %d\n",i+1,j);
}
if(j+1<n&&maps[i][j+1]==1&&mark[i][j+1]==0){
queues[ps++]=i*100+j+1;
mark[i][j+1]=1;
printf("%d %d\n",i,j+1);
}
//getchar();
sum++;
}
printf("%d\n",sum);
}
int main()
{
int i,j,sum,ps;
while(scanf("%d %d",&m,&n)!=EOF)
{
for(i=0;i<m;i++)
for(j=0;j<n;j++)
scanf("%d",&maps[i][j]);
memset(mark,0,sizeof(mark));
bfs();
}
return 0;
}
1 1 0 1 1
1 0 1 1 1
1 0 1 0 0
1 0 1 1 1
1 1 1 0 1
1 1 1 1 1
#include<cstdio>
#include<cstring>
using namespace std;
const int maxn=100;
int maps[maxn][maxn];
int mark[maxn][maxn];
int queues[maxn*maxn];
int m,n;
void bfs()
{
int i=0,ps=0,j=0,sum=0,now=0;
queues[ps++]=0;
while(now<=ps)
{
if(i==0&&j==n-1)
break;
i=queues[now]/100;
j=queues[now++]%100;
if(i+1<m&&maps[i+1][j]==1&&mark[i+1][j]==0){
queues[ps++]=(i+1)*100+j;
mark[i+1][j]=1;
printf("%d %d\n",i+1,j);
}
if(j+1<n&&maps[i][j+1]==1&&mark[i][j+1]==0){
queues[ps++]=i*100+j+1;
mark[i][j+1]=1;
printf("%d %d\n",i,j+1);
}
//getchar();
sum++;
}
printf("%d\n",sum);
}
int main()
{
int i,j,sum,ps;
while(scanf("%d %d",&m,&n)!=EOF)
{
for(i=0;i<m;i++)
for(j=0;j<n;j++)
scanf("%d",&maps[i][j]);
memset(mark,0,sizeof(mark));
bfs();
}
return 0;
}
相关文章推荐
- NGUI之刚体无限弹跳
- java之yield(),sleep(),wait()等区别
- 第6讲 Zend 整合数据库
- C# webbroswer屏蔽脚本错误
- 看<后海不是海>的随想
- guide
- Gensim官方教程翻译(五)——英文维基百科的实验
- HDU---Children's queue(递归解法)
- 【python学习笔记02】python的数据类型2
- thinkphp url重写
- The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods install
- OpenCV2.4.10+VS2013+Win8.1 64位配置
- 函数式编程
- Java程序日志二
- HTTP长连接与短连接
- [LeetCode][Java] Median of Two Sorted Arrays
- Leetcode#15 3Sum
- 黑客丛林之旅通关攻略(共14关)
- Xcode的debug调试
- Getting Started with Activity & Fragment Transitions