hdoj1253
#include <iostream>
#include <sstream>
#include <string.h>
#include <math.h>
#include<stdlib.h>
#include <queue>
#include <set>
#include <algorithm>
using namespace std;
int A,B,C,t;
int dxy[7][3]=
{
0,-1,0,
0,1,0,
1,0,0,
-1,0,0,
0,0,1,
0,0,-1
};
int a[55][55][55];
int flag[55][55][55];
{
int x,y,z;
int step;
} now,ne;
{
int i;
memset(flag,0,sizeof(flag));
while(!q.empty())
q.pop();
now.x=0;
now.y=0;
now.z=0;
now.step=0;
flag[0][0][0]=1;
q.push(now);
while(!q.empty())
{
now=q.front();
q.pop();
if(now.step+1>t)
break;
for(i=0; i<6; i++)
{
int dx=now.x+dxy[i][0];
int dy=now.y+dxy[i][1];
int dz=now.z+dxy[i][2];
if(dx==A-1&&dy==B-1&&dz==C-1&&now.step+1<=t)
{
printf("%d\n",now.step+1);
return;
}
if(dx<0||dy<0||dz<0||dz>=C||dy>=B||dx>=A||flag[dx][dy][dz]||a[dx][dy][dz])
continue;
flag[dx][dy][dz]=1;
ne.x=dx;
ne.y=dy;
ne.z=dz;
ne.step=now.step+1;
q.push(ne);
}
}
printf("-1\n");
}
{
int i,j,k,T;
scanf("%d",&T);
while(T--)
{
scanf("%d%d%d%d",&A,&B,&C,&t);
for(i=0; i<A; i++)
{
for(j=0; j<B; j++)
{
for(k=0; k<C; k++)
scanf("%d",&a[i][j][k]);
}
}
bfs();
}
return 0;
}
hdoj1253的更多相关文章
- HDOJ1253 胜利大逃亡 BFS
胜利大逃亡 Time Limit: 4000/2000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total Submiss ...
随机推荐
- Hibernate中的HQL语言
一.HQL语言简介 HQL全称是Hibernate Query Language,它提供了是十分强大的功能,它是针对持久化对象,直接取得对象,而不进行update,delete和insert等操作.而 ...
- Java服务器端 API 错误码设计总结
1.对于API结果返回,定义BaseResult 类 拥有success,errorCode,errorMsg个3个基本参数,success使用Boolean类型,errorCode使用Integer ...
- Oracle 11gR2 使用RMAN Duplicate复制数据库
Oracle 11gR2 使用RMAN Duplicate复制数据库 前言: 上周刚做完一个项目,用户要求RAC的数据库可以自己主动备份到另外一个单节点上,单节点可以正常拿起来就能用. ...
- 编译性语言&解释性语言
计算机是不能理解高级语言.当然也就不能直接执行高级语言了.计算机仅仅能直接理解机器语言,所以不论什么语言,都必须将其翻译成机器语言.不论什么编程语言编写的程序归根究竟都是由底层机器的机器代码(01序列 ...
- Unable to start adb server: adb server version (32) doesn't match this client (39); killing...
关于Android studio 连接不上adb问题,有人说重启机器,有人说重启工具,也有人说adb kill-server.然后我都尝试过依然没有解决.通过各种查询.最终成功的解决!!! adb n ...
- 常用的Css命名方式
常用的Css命名方式: CSS命名规范: 1.文件命名规范 全局样式:global.css: 框架布局:layout.css: 字体样式:font.css: 链接样式:link.css: 打印样式:p ...
- Bestcoder round 18----B题(一元三次方程确定区间的最大值(包含极值比较))
Math Problem Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Tota ...
- sql 逻辑运算符 优先级
SELECT * FROM tl_documentation WHERE storehouse_id =2 OR customer_id =2 AND product_id =20 ORDER BY ...
- 用php描述顺序查找
//顺序查找(数组里查找某个元素) $arr = array(3,55,45,2,67,76,6.7,-65,85,4); function seq_sch($array, $k){ for($i=0 ...
- Python: PS 滤镜--表面模糊
本文用 Python 实现 PS 滤镜中的表面模糊,具体的算法原理和效果可以参考之前的博客: http://blog.csdn.net/matrix_space/article/details/528 ...