秦心由面具所转化而成的付丧神。因为本体总是木无表情,看上去就像一个三无少女。持有66个代表不同情绪的面具,通过这些面具可以表达出不同的感情。拥有操控感情程度的能力。秦心无意之中丢失了代表“希望”的面具,因此面具之间微妙的力量平衡被打破了。秦心在人间之里遇到了捡到希望之面的古明地恋(以下简称恋恋),然而恋恋却不肯归还,决斗中秦心被恋恋击败,秦心经过修炼后想再次找恋恋决斗,秦心与恋恋所在的空间为一个ABC的立方体,可以被表示成A个B*C的矩阵,刚开始秦心在(0,0,0)的位置,恋恋在(A-1,B-1,C-1)的位置,然而恋恋也不是一直在这里,T分后恋恋又会无意识的跑到别的地方去玩,秦心每分能从一个坐标飞到相邻的六个坐标中的其中一个。现给你该空间的地图,请你计算秦心有没可能在恋恋离开前找到恋恋(如果飞到与恋恋相同区域,恋恋刚好想跑去别的地方玩,秦心会叫住她,也算成功找到)

Input

输入数据的第一行是一个正整数K,表明测试数据的数量.每组测试数据的第一行是四个正整数A,B,C和T(1<=A,B,C<=50,1<=T<=1000),它们分别代表该空间的大小的三维和恋恋待在这里的时间.然后是A块输入数据(先是第0块,然后是第1块,第2块…),每块输入数据有B行,每行有C个正整数,代表空间的布局,其中0代表无阻碍,1代表岩石.(如果对输入描述不清楚,可以参考Sample Input中的迷宫描述,它表示的就是上图中的迷宫)

Output

对于每组测试数据,如果秦心能够在恋恋离开前找到她,那么请输出她最少需要多少分钟,否则输出-1.

Sample Input

1
3 3 4 20
0 1 1 1
0 0 1 1
0 1 1 1
1 1 1 1
1 0 0 1
0 1 1 1
0 0 0 0
0 1 1 0
0 1 1 0

Sample Output

11

直接暴力bfs即可,没任何坑点

#include <iostream>
#include <queue>
using namespace std;
struct Node
{int a, b, c, t;Node(int _a, int _b, int _c, int _t) :a(_a), b(_b), c(_c), t(_t) {}
};
const int dir[6][3] = { {1, 0, 0}, {0, 1, 0}, {0, 0, 1}, {-1, 0, 0}, {0, -1, 0}, {0, 0, -1} };
bool map[50][50][50];
int main(void)
{int k;cin >> k;while (k--){int a, b, c, t;cin >> a >> b >> c >> t;for (int i = 0; i < a; ++i)for (int j = 0; j < b; ++j)for (int k = 0; k < c; ++k)cin >> map[i][j][k];bool finded = false;map[0][0][0] = true;queue<Node> que;que.push(Node(0, 0, 0, 0));while (not que.empty()){Node node = que.front();que.pop();if (node.a == a - 1 && node.b == b - 1 && node.c == c - 1){finded = true;cout << node.t << endl;break;}else if (node.t == t)break;for (int i = 0; i < 6; ++i){Node tmp(node.a + dir[i][0], node.b + dir[i][1], node.c + dir[i][2], node.t + 1);if (tmp.a < 0 || tmp.b < 0 || tmp.c < 0 || tmp.a >= a || tmp.b >= b || tmp.c >= c)continue;else if (!map[tmp.a][tmp.b][tmp.c]){map[tmp.a][tmp.b][tmp.c] = true;que.push(tmp);}}}if (not finded)cout << -1 << endl;}
}

厦门理工学院OJ题解(1139:秦心的面具)相关推荐

  1. 厦门理工学院OJ题解(合集)

    把一些好玩的题目的题解放这里.有什么其他好玩题想看的评论或私信,我再写. 厦门理工学院OJ题解(1020:第三届程序设计大赛 搬果实) 厦门理工学院OJ题解(1139:秦心的面具) 厦门理工学院OJ题 ...

  2. 厦门理工学院OJ 1139.秦心的面具 (bfs)

    Description 秦心由面具所转化而成的付丧神.因为本体总是木无表情,看上去就像一个三无少女.持有66个代表不同情绪的面具,通过这些面具可以表达出不同的感情.拥有操控感情程度的能力.秦心无意之中 ...

  3. 厦门理工学院OJ题解(1226:英雄联盟)

    Description 相信很多人都玩过英雄联盟,身为一个优秀的召唤师,你需要能很好地补兵.假设你使用的是无极剑圣, 你只能对小兵使用普通攻击和阿尔法突袭,施放普通攻击和阿尔法突袭的时间都为 1 秒, ...

  4. 厦门理工学院oj 1107-牲口棚的安全

    厦门理工学院oj 1107-牲口棚的安全 题目描述: Time Limit:1000MS Memory Limit:65536K Total Submit:211 Accepted:122 Descr ...

  5. 厦门理工学院OJ 1108.雾霾大作战 (最短路)

    Description 京津冀地区常发生雾霾,厦门人普遍感受不深.如今厦门有时也会发生雾霾,厦门市政府决定推行公共自行车来解决雾霾问题. 政府决定在厦禾路上设置了N 个自行车出租站1,2,-,N.市民 ...

  6. 厦门理工学院OJ 1187.骑士精神 (dfs+剪枝)

    Description 像骑士的忠贞 不畏惧邪恶的眼神 这过程一直放在我心底就像 挡在你胸前的盔甲 保护着我让我心疼 骑士们发挥出你们的精神 就这样强悍的骑士撑到最后 骄傲的公主的要回家整装再出发. ...

  7. 厦门理工学院OJ 1234.恐怖的奴隶主 (模拟)

    __M子__最近在玩一款叫做<炉石传说>的卡牌游戏,最经常使用的是以恐怖奴隶主为核心的战士套牌,该套牌经典打法有以下3种: 1.用恐怖奴隶主+旋风斩效果,铺场. 2.用战歌指挥官+恐怖奴隶 ...

  8. 校OJ P1139 -- 秦心的面具

    一道简单的01迷宫题,直接发代码 #include <iostream> #include <cstring> #include <cstdio> #include ...

  9. 厦门理工学院计算机科学与技术专业,厦门理工学院计算机类(含计算机科学与技术、网络工程、空间信息与专业2016年在福建理科高考录取最低分数线...

    类似问题答案 2016年厦门理工学院计算机类(含计算机科学与技术.网络工程.空间信息与专业最低分... 学校 地 区 专业 年份 批次 类型 分数 厦门理工学院 福建 计算机类(含计算机科学与技术.网 ...

最新文章

  1. VMprotect简介
  2. LeetCode之Ransom Note
  3. Asterisk使用数据库配置方法
  4. 玩转算法面试-第三章
  5. html5调用系统声音1s响一次_20款奔驰GLC260提车改柏林之声音响,音乐诉请,为爱发声!...
  6. C++游戏入门书籍推荐
  7. BindeService
  8. php 检测nfs状态,PHP和Shell实现检查SAMBA与NFS Server是否存在_php技巧
  9. [ExtJS6]ResponsiveColumn-自适应列布局
  10. 有关语音识别技术的一些信息点
  11. 达而稳 驱动 fl2000dx_Intel-AMD核显驱动没人管:Win10无法升级,不要撞车
  12. saetv2.ex.class.php,curl out of memory window下PHP调用curl报内存不够
  13. 百度官方wormHole后门检测记录(转)
  14. Multisim 14.0安装包+详细安装步骤
  15. python123高次方程求根_GitHub - loveunk/math-advanced-algebra-notes: 根据丘维声的《高等代数》整理...
  16. 计算机桌面设置上时间表,如何在电脑桌面设置显示星期
  17. SQL查询实现差集(补集)运算
  18. 显示当前数据库服务器的ip,怎么查看服务器数据库的ip地址
  19. 传统服务器销售转型,传统IDC企业云化转型有了新思路!
  20. Expiring 1 record(s) for canalEtl_hn-0: 30017 ms has passed since batch creation plus linger time

热门文章

  1. UVA-10929-You can say 11(秦九昭算法+同余与模算术)
  2. 登录路由器显示服务器拒绝访问,ie浏览器拒绝访问原因如何解决
  3. 进程、线程、协程之间的关系
  4. IV 12 MySQL+drbd+heartbeat
  5. python学习笔记爬虫——爬取智联招聘信息
  6. 用Hyperledger cello的0.9.0-h3c分支创建一套区块链系统
  7. PPt2007制作三维立体字效果教程
  8. windows 11 访问带SMB的文件服务器(小米路由器)
  9. java操作excel_每天一个小技术之Java操作Excel
  10. js跳转页面与打开新窗口的代码