HDU_1253 胜利大逃亡(BFS)
纠结一晚上,注意细节啊!!!(看到有很多解题报告都用<queue>,我不太喜欢用STL的东西。。。)
My Code:
#include <iostream>#include <cstdio>#include <cstring> using namespace std; const int N = 51; struct node{int x;int y;int z;int t;}q[N*N*N]; int d[6][3] = {{1, 0, 0}, {-1, 0, 0}, {0, 1, 0}, {0, -1, 0}, {0, 0, -1}, {0, 0, 1}};int map[N][N][N];int ans, T, X, Y, Z; int bfs(){int f = 0, r = 0, i; node p; map[0][0][0] = 1; q[0].x = 0; q[0].y = 0; q[0].z = 0; q[0].t = 0;while(f <= r) { p = q[f++]; for(i = 0; i < 6; i++) {int a = p.x + d[i][0];int b = p.y + d[i][1];int c = p.z + d[i][2];if(a >= 0 && a < X && b >= 0 && b < Y && c >= 0 && c < Z && !map[a][b][c]) {if(a == X-1 && b == Y-1 && c == Z-1 && p.t+1 <= T) { ans = p.t + 1;return 1; }r++; map[a][b][c] = 1; q[r].x = a; q[r].y = b; q[r].z = c; q[r].t = p.t+1; } } }return 0;} int main(){//freopen("data.in", "r", stdin); int t, i, j, k; scanf("%d", &t);while(t--) { scanf("%d%d%d%d", &X, &Y, &Z, &T); memset(map, 0, sizeof(map)); for(i = 0; i < X; i++)for(j = 0; j < Y; j++)for(k = 0; k < Z; k++) scanf("%d", &map[i][j][k]); ans = 0;if(bfs()) printf("%d\n", ans);else printf("-1\n"); }return 0;}
HDU_1253 胜利大逃亡(BFS)相关推荐
- HDU-1253 胜利大逃亡 (BFS)
好吧,上次刚傻完这次又傻了一次,先粘题目吧. 题目:HDU-1253 胜利大逃亡 题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1253 题目: 胜利大 ...
- HD 1253 胜利大逃亡(bfs)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1253 Problem Description Ignatius被魔王抓走了,有一天魔王出差去了,这可是 ...
- HDU1253:胜利大逃亡(BFS)
Problem Description Ignatius被魔王抓走了,有一天魔王出差去了,这可是Ignatius逃亡的好机会. 魔王住在一个城堡里,城堡是一个A*B*C的立方体,可以被表示成A个B*C ...
- 胜利大逃亡 --- bfs记录
Problem Description Ignatius被魔王抓走了,有一天魔王出差去了,这可是Ignatius逃亡的好机会. 魔王住在一个城堡里,城堡是一个ABC的立方体,可以被表示成A个B*C的矩 ...
- HDU - 1253 胜利大逃亡 BFS
https://vjudge.net/problem/HDU-1253 AC代码 #include<cstdio> #include<iostream> #include< ...
- HDU 胜利大逃亡(BFS)
HDOJ 1253 胜利大逃亡 (BFS) Problem Description BFS 完整代码 Problem Description Ignatius被魔王抓走了,有一天魔王出差去了,这可是I ...
- HDU 1429 胜利大逃亡(续) (BFS+位压缩)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1429 胜利大逃亡(续) Time Limit: 4000/2000 MS (Java/Others) ...
- [ACM] hdu 1253 胜利大逃亡 (三维BFS)
胜利大逃亡 Problem Description Ignatius被魔王抓走了,有一天魔王出差去了,这但是Ignatius逃亡的好机会. 魔王住在一个城堡里,城堡是一个A*B*C的立方体,能够被表示 ...
- hdu 1429 胜利大逃亡(续) bfs+状态压缩
胜利大逃亡(续) Time Limit: 4000/2000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total S ...
最新文章
- 一流投资人会关注什么样的区块链初创公司?
- MyBatis-Plus_实体作为条件构造器构造方法的参数
- GitHub#algorithm#:《剑指offer》 的50道面试题
- mysql修改字段结构_MySQL修改表结构及其添加删除修改字段功能
- BZOJ 2708 [Violet 1]木偶 DP
- 用java在JPanel中建一个表格_如何使用Java在JPanel中显示JTable?
- ios开发中的字符串常量如何处理
- 2.学习管理系统项目学习一
- Atitit.js的键盘按键事件捆绑and事件调度
- 余压监控系统保证火灾发生时消防疏散通道的通畅,为大型高层建筑的安全运行和人民生命财产安全保驾护航
- 安装PL-2303驱动
- (100天2小时第二十九天)几种常见的图像噪声及去噪处理算法
- configure it with blueman-service
- CVPR2019目标检测汇总
- Linux-系统的初始化和服务
- 产品经理的修炼:如何把梳子卖给和尚
- 任何没有行动的爱,顶多算是喜欢
- Matlab技巧总结——22-MathorCup
- 只显示border边框左右(上下)两边怎么写?
- 个人如何申请计算机软著著作
热门文章
- oracle rac 磁盘重建,Oracle RAC环境下重建ASM磁盘组 Re-create ASM diskgroup with Oracle RAC...
- java 文件写入 读取_JAVA文件的两种读取方法和三种写入方法
- 你们的竞赛更需要你们的参与
- 对比电机和舵机中的PWM信号的作用
- 使用PYTHON操作Excel的工具
- 基于STC8G8K64U三通道高速ADC采集板
- 河北计算机课本初中,河北:2019-2020学年中小学教学用书有变
- curl抓取页面是乱码 php_php curl 获取网页内容 中文乱码
- 从乘法表JAVA意思4_四、Java从头开始-我的九九乘法表(二)
- C 回顾 volatile 和 register 修饰符