SDUT-3474 汤圆の拯救计划(常规BFS)
来源:互联网 发布:黄酒 知乎 编辑:程序博客网 时间:2024/05/16 01:09
汤圆の拯救计划
Time Limit: 1000MS Memory Limit: 65536KB
Submit Statistic Discuss
Problem Description
又到了汤圆星球一年一度的汤圆节了,但是大魔王却过来把汤圆公主抓走了Σ( ° △ °|||)︴
身为汤圆骑士的QAQ蒟蒻自然而然的肩负着拯救汤圆的使命
QAQ蒟蒻经历了千辛万苦(并没有)之后,来到了大魔王的城堡,根据情报,汤圆公主就被大魔王放在城堡内,然后QAQ蒟蒻发现自己是一个路
痴,所幸的是他拿到了大魔王的城堡的地图,而且在这上面标注了自己和汤圆公主的位置,那么问题来了,聪明的你能帮他计算出需要多少单位
的时间来赶到汤圆公主的位置吗?
Ps:QAQ蒟蒻每一次都可以移动到相邻的非墙的格子中,每次移动都要花费1个单位的时间
有公共边的格子定义为相邻
Input
一开始为一个整数T代表一共有T组数据
每组测试数据的第一行有两个整数n,m (2<=n,m<=300)
接下来的n行m列为大魔王的迷宫,其中
’#’为墙壁,‘_‘为地面
A代表QAQ蒟蒻,O代表汤圆公主:
Output
一组数据输出一个整数代表从QAQ蒟蒻到汤圆的位置的最短时间
如果QAQ蒟蒻不能到达汤圆的位置,输出-1
Example Input
23 3__A_##__O2 2A##O
Example Output
6-1
Hint
Author
QAsQ
//没什么可说的
#include <bits/stdc++.h>using namespace std;char c[333][333];int d[4][2]= {{1,0},{-1,0},{0,-1},{0,1}},n,m;int Map[333][333];struct node{ int x,y; int t;} p,q;void BFS(int s1,int s2){ queue<node>Q; p.x=s1; p.y=s2; p.t=0; Q.push(p); Map[s1][s2]=1; while(!Q.empty()) { q=Q.front(); Q.pop(); if(c[q.x][q.y]=='O') { cout<<q.t<<endl; return; } for(int i=0; i<4; i++) { p.x=q.x+d[i][0]; p.y=q.y+d[i][1]; p.t=q.t+1; if(!Map[p.x][p.y]&&c[p.x][p.y]!='#'&&p.x>=0&&p.x<n&&p.y>=0&&p.y<m) { Map[p.x][p.y]=1; Q.push(p); } } } cout<<"-1"<<endl; return;}int main(){ int i,j,flag,T; cin>>T; while(T--) { cin>>n>>m; flag=0; memset(Map,0,sizeof(Map)); for(i=0; i<n; i++) { for(j=0; j<m; j++) cin>>c[i][j]; } for(i=0; i<n; i++) { for(j=0; j<m; j++) { if(c[i][j]=='A') { flag=1; break; } } if(flag==1)break; } BFS(i,j); } return 0;}
阅读全文
0 0
- SDUT-3474 汤圆の拯救计划(常规BFS)
- 汤圆の拯救计划
- 汤圆の拯救计划
- 汤圆の拯救计划
- 汤圆の拯救计划
- 汤圆の拯救计划
- sdutacm-汤圆の拯救计划
- SDUT-汤圆の汤
- SDUT-汤圆星の汤圆树
- SDUT 汤圆の糖(递推算法)
- SDUT-2779 找朋友(常规BFS)
- 【线段树思想】SDUT 3475 最后の汤圆
- 汤圆の汤
- Openjudge4980 拯救行动(bfs)
- 1727 洪水拯救计划
- SDUT 3488 小明の魔法计划
- SDUT__汤圆系列之迷の汤圆序列
- 拯救行动(变种bfs)
- JavaScript深入系列15篇正式完结!
- Android开发:XML简介及DOM、SAX、PULL解析对比
- zcmu-1986
- js中问号
- 单表查询
- SDUT-3474 汤圆の拯救计划(常规BFS)
- 【数据平台】python中文分词工具jieba
- linux 下shell脚本入门编程之注释
- Xcode运行错误library not found for -lcrt1.3.1.o
- DecorView
- php删除所有的HTML标签,除去P标签
- 【主题OJ发布】更新日记
- GOF23设计模式——单例模式
- 欢迎使用CSDN-markdown编辑器