题目链接:准备好了吗here~~~


#include<stdio.h>
#include<string.h>
#include<queue>
using namespace std;
int dx[4]={1,-1,0,0};
int dy[4]={0,0,-1,1};
int map[10][10];
int n,m;
struct Nightmare
{int x,y;int step;//前进的步数int time;//每走一步剩余时间
};
int bfs(int a,int b)
{queue<Nightmare> Q;Nightmare  q,p;p.x=a;p.y=b;p.step=0;p.time=6;Q.push(p);while(!Q.empty()){q=Q.front();Q.pop();if(map[q.x][q.y]==3) return q.step;if(q.time==1) continue;for(int i=0;i<4;i++){p.x=q.x+dx[i];p.y=q.y+dy[i];p.time=q.time-1;p.step=q.step+1;if(map[p.x][p.y]){if(map[p.x][p.y]==4){p.time=6;map[p.x][p.y]=1;}Q.push(p);}}}return -1;
}
int main()
{int N,x,y;;scanf("%d",&N);while(N--){scanf("%d%d",&n,&m);memset(map,0,sizeof(map));for(int i=1;i<=n;i++){for(int j=1;j<=m;j++){scanf("%d",&map[i][j]);if(map[i][j]==2){x=i;y=j;}}}printf("%d\n",bfs(x,y));}
}

nyoj-483--Nightmare--BFS+允许回头相关推荐

  1. Nightmare Ⅱ(BFS)

    题目连接: Nightmare Ⅱ 题目: Last night, little erriyue had a horrible nightmare. He dreamed that he and hi ...

  2. hdu - 1072 Nightmare(bfs)

    http://acm.hdu.edu.cn/showproblem.php?pid=1072 遇到Bomb-Reset-Equipment的时候除了时间恢复之外,必须把这个点做标记不能再走,不然可能造 ...

  3. NYOJ(21),BFS,三个水杯

    题目链接:http://acm.nyist.net/JudgeOnline/problem.php?pid=21 BFS判环,vis标记状态即可. #include <stdio.h> # ...

  4. bottom sheets_Excel 2013中的SHEET和SHEETS函数

    bottom sheets I've been experimenting with the new SHEET and SHEETS functions in Excel 2013, to see ...

  5. Leetcode之跳跃游戏整理

    1306. 跳跃游戏 III 题目: 这里有一个非负整数数组 arr,你最开始位于该数组的起始下标 start 处.当你位于下标 i 处时,你可以跳到 i + arr[i] 或者 i - arr[i] ...

  6. HDU Problem - 3085 Nightmare Ⅱ(双向BFS)

    题目链接 Problem Description Last night, little erriyue had a horrible nightmare. He dreamed that he and ...

  7. G - Nightmare Ⅱ (双向BFS)

    题目链接:SDTBU-ACM集训队暑期集训---第一讲 - Virtual Judge Last night, little erriyue had a horrible nightmare. He ...

  8. 专题训练二 搜索进阶 HDU - 3085 Nightmare Ⅱ (双向BFS + 曼哈顿距离)

    HDU - 3085 Nightmare Ⅱ (双向BFS + 曼哈顿距离) Problem Description Last night, little erriyue had a horrible ...

  9. HDU 3085 Nightmare Ⅱ【BFS +曼哈顿距离+综合性较强】

    Nightmare Ⅱ Time Limit : 2000/1000ms (Java/Other)   Memory Limit : 32768/32768K (Java/Other) Total S ...

  10. HDU3085 Nightmare Ⅱ —— 双向BFS + 曼哈顿距离

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=3085 Nightmare Ⅱ Time Limit: 2000/1000 MS (Java/Other ...

最新文章

  1. vue 定义全局弹框_VUE路由拦截:Vue自定义全局弹窗组件
  2. 5.3.4 TCP流量控制
  3. 【WinCE】SD card技术了解并WINCE下SDHC驱动开发(updated)
  4. Fabric--区块链应用开发
  5. 【数据库系统概论】考研第六部分重点分析【6.1】
  6. 左神算法:判断 t1 树中是否有与 t2 树拓扑结构完全相同的子树(Java版)
  7. java两种绑定方式_Javascript绑定事件的两种方式的区别
  8. Leetcode--442. 数组中重复的数据
  9. python中有那几种赋值_详解Python列表赋值复制深拷贝及5种浅拷贝
  10. android 融云定义主题,融云开发者文档
  11. c运算符优先级_C运算符
  12. 高并发架构系列:分布式锁的由来、特点及Redis分布式锁的实现详解
  13. java当前日期_Java 获取当前日期的四种方法
  14. lvds 共模电感_初识共模电感 - yi394517286的博客 - 与非博客 - 与非网
  15. 大内高手 常见内存错误
  16. OCR技术1-字符识别技术总览
  17. K-means最优K值计算(利用SSE)
  18. tslearn使用轮廓系数(silhouette_score)评估KShape聚类效果
  19. 3dsmax 放样 操作
  20. mysql 伪表查询语句_Oracle-05:伪表dual

热门文章

  1. Centos7编译安装nginx并设置反向代理
  2. 【无私分享:从入门到精通ASP.NET MVC】从0开始,一起搭框架、做项目(8) 权限管理,自定义权限,扩展权限...
  3. crontab 执行的目录 研究
  4. NSString ,NSMutableString用法以及一些常用方法
  5. HTML+CSS实例——漂亮的查询部件(一)
  6. NYOJ-99 单词拼接(欧拉+回溯)
  7. promise is promose
  8. things to do in English debate: scenario
  9. volunteer is great
  10. 苏州outlook的方向分析