题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1253

题目大意:在所给的时间能顺利离开城堡。

 #include <iostream>
#include <cstdio>
#include <queue>
#include <cstring>
using namespace std;
int map[][][],visit[][][],a,b,c,T;
int dir[][]= {,,,,,-,,,,,-,,,,,-,,};
struct next
{
int x;
int y;
int z;
int t;
} s,ss;
queue<next>q,qq;
int bfs()
{
s.x=;
s.y=;
s.z=;
s.t=;
map[][][]=;
q.push(s);
while (!q.empty())
{
s=q.front();
q.pop();
for (int i=; i<; i++)
{
int t=s.t+;
int x=s.x+dir[i][],y=s.y+dir[i][],z=s.z+dir[i][];
if (x>=&&x<a&&y>=&&y<b&&z>=&&z<c&&t<=T&&map[x][y][z]==&&!visit[x][y][z])
{
if(x==a-&&y==b-&&z==c-)
{
return t;
}
ss.x=x;
ss.y=y;
ss.z=z;
ss.t=t;
visit[x][y][z]=;
q.push(ss); }
}
}
return -;
}
int main ()
{
int o,i,j,k;
scanf ("%d",&o);
while (o--)
{
memset(visit,,sizeof(visit));
q=qq;
scanf ("%d%d%d%d",&a,&b,&c,&T);
for (i=; i<a; i++)
for (j=; j<b; j++)
for (k=; k<c; k++)
scanf ("%d",&map[i][j][k]);
int t=bfs();
if (t>=)
printf ("%d\n",t);
else
printf ("-1\n");
}
return ;
}

hdu 1253 胜利大逃亡(简单题)的更多相关文章

  1. hdu 1253 胜利大逃亡 (三维简单bfs+剪枝)

    胜利大逃亡 Time Limit: 4000/2000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total Subm ...

  2. hdu 1253:胜利大逃亡(基础广搜BFS)

    胜利大逃亡 Time Limit: 4000/2000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total Submi ...

  3. hdu 1253 胜利大逃亡 (代码详解)解题报告

    胜利大逃亡 Problem Description Ignatius被魔王抓走了,有一天魔王出差去了,这可是Ignatius逃亡的好机会. 魔王住在一个城堡里,城堡是一个A*B*C的立方体,可以被表示 ...

  4. HDU 1253 胜利大逃亡 NYOJ 523【BFS】

    胜利大逃亡 Time Limit: 4000/2000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total Subm ...

  5. HDU 1253 胜利大逃亡 题解

    胜利大逃亡 Time Limit: 4000/2000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total Submi ...

  6. [ACM] hdu 1253 胜利大逃亡 (三维BFS)

    胜利大逃亡 Problem Description Ignatius被魔王抓走了,有一天魔王出差去了,这但是Ignatius逃亡的好机会. 魔王住在一个城堡里,城堡是一个A*B*C的立方体,能够被表示 ...

  7. hdu 1253 胜利大逃亡(广搜,队列,三维,简单)

    题目 原来光搜是用队列的,深搜才用栈,我好白痴啊,居然搞错了 三维的基础的广搜题 #define _CRT_SECURE_NO_WARNINGS #include<stdio.h> #in ...

  8. HDU 1253 胜利大逃亡

    Problem Description Ignatius被魔王抓走了,有一天魔王出差去了,这可是Ignatius逃亡的好机会. 魔王住在一个城堡里,城堡是一个A*B*C的立方体,可以被表示成A个B*C ...

  9. hdu - 1240 Nightmare && hdu - 1253 胜利大逃亡(bfs)

    http://acm.hdu.edu.cn/showproblem.php?pid=1240 开始没仔细看题,看懂了发现就是一个裸的bfs,注意坐标是三维的,然后每次可以扩展出6个方向. 第一维代表在 ...

随机推荐

  1. CF546E Soldier and Traveling

    题目描述 In the country there are n n n cities and m m m bidirectional roads between them. Each city has ...

  2. WC2018集训 吉老师的军训练

    WC2018集训 吉老师的军训练 #include<bits/stdc++.h> #define RG register #define IL inline #define _ 20000 ...

  3. 【Ubuntu】编写一个c语言代码

    安装 sudo apt-get  build-depgcc coding:http://www.cnblogs.com/zero1665/archive/2009/11/03/1595510.html ...

  4. BZOJ2120:数颜色——题解

    https://www.lydsy.com/JudgeOnline/problem.php?id=2120 https://www.luogu.org/problemnew/show/P1903#su ...

  5. Linux实验三

    主要参考课本第二章所学习内容  (信息的表示和处理) 所有重点内容: 信息存储 整数表示/运算 浮点数 一   十六进制表示 0~9 A~F 0000~1111 注:(主要参考课本P22) 字 字长: ...

  6. win10下ndk编译arm可执行体

    编译参考文章 http://blog.csdn.net/john_1984/article/details/12622215 一.编写soLoader主文件 soLoader.c内容: #includ ...

  7. oracle-java7-installer安装java失败之后的处理

    最开始尝试使用installer安装jdk7,但是未能进行完整,之后每次安装软件都会报错,说oracle-java7-installer处有错误,查得如下解决办法: sudo rm /var/lib/ ...

  8. 【套题】qbxt国庆刷题班D2

    D2 今天的题感觉还是好妙的 T1 传送门 Description 现在有一张\(n\)个节点\(m\)条边的无向连通图\(G=(V,E)\),满足这张图中不存在长度大于等于3的环且图中没有重边和自环 ...

  9. C/C++中字符串与数字相互转换

    数字转字符串: 用C++的streanstream: #include <sstream> #Include <string> string num2str(double i) ...

  10. JQuery选择符的理解与应用

    JQuery强大的选择符可以让我们获得页面中任何元素进行操作,并且使用简单方便,可读性强.本章内容根据本人在开发中常用到的选择符作为例子来进行讲解,如有更多常用的简单的例子可回复提供,参与讨论,一起学 ...