UVa 11624 (BFS) Fire!】的更多相关文章

也是一个走迷宫的问题,不过又有了点变化. 这里迷宫里有若干把火,而且火每秒也是向四个方向蔓延的.问人是否能走出迷宫. 我用了两遍BFS,第一遍把所有着火的格子加入队列,然后计算每个格子着火的时间. 第二遍便是走迷宫,只有当这个格子不是墙,而且当前时间在这个格子着火之前才能拓展.当然,并不是所有的空格都一定会着火. #include <cstdio> #include <cstring> #include <queue> using namespace std; stru…
题目传送门 J - Fire! Joe works in a maze. Unfortunately, portions of the maze have caught on fire, and the owner of the maze neglected to create a fire escape plan. Help Joe escape the maze. Given Joe’s location in the maze and which squares of the maze are…
11624 - Fire! Time limit: 1.000 seconds Joe works in a maze. Unfortunately, portions of the maze havecaught on re, and the owner of the maze neglected to create a reescape plan. Help Joe escape the maze.Given Joe's location in the maze and which squa…
题意: 迷宫里起火了,有若干个障碍物,有多个起火点,起火点每经过一个时间间隔就向它的上下左右相邻的格子扩散. 有个倒霉的人好像叫做“Joe”,他要逃出来,他每次可以向上下左右任意移动一格,但是即要避开火也要避开障碍物,问你他如果逃得出来的话至少要多少步. 没有着火点的话就直接,bfs了,但是有的话就稍微与处理一下,我们可以通过对着火点bfs,从而知道每个格子在什么时间着火. 这样的话,只要先bfs着火点,把每个格子在什么时间着火保存到数组里:然后bfs那个人,在判断他可不可以那个格子的check…
-->Fire! 直接上中文 Descriptions: 乔在迷宫中工作.不幸的是,迷宫的一部分着火了,迷宫的主人没有制定火灾的逃跑计划.请帮助乔逃离迷宫.根据乔在迷宫中的位置以及迷宫的哪个方块着火,你必须确定火焰烧到他之前,乔是否可以离开迷宫,如果能离开他能跑多快. 乔和火每分钟移动一个方格,上.下.左.右,四个方向中的一个.火势向四个方向同时蔓延.乔可以从迷宫的任何一个边界逃离迷宫.无论是乔还是火都不会到达有墙的位置. 输入 第一行输入包含一个整数,即测试次数 每个测试用例的第一行包含两个…
题目链接 http://vjudge.net/contest/121377#problem/J Joe works in a maze. Unfortunately, portions of the maze have caught on fire, and the owner of the maze neglected to create a fire escape plan. Help Joe escape the maze. Given Joe's location in the maze…
UVA - 11624 题意:joe在一个迷宫里,迷宫的一些部分着火了,火势会向周围四个方向蔓延,joe可以向四个方向移动.火与人的速度都是1格/1秒,问j能否逃出迷宫,若能输出最小时间. 题解:先考虑模拟火,肯定是bfs(每次把同一时间着火的格子pop出来,再将它们周围的格子的t加一push进去) 然后考虑怎么模拟人,现在人处在一个会变化的迷宫中.貌似很复杂. 我们可以考虑t时刻的地图(假设我们bfs人的位置),着火的地方相当于墙壁,已经走过的地方也相当于墙壁(因为不可能回到已经走过的地方,…
题目传送门 /* BFS:首先对火搜索,求出火蔓延到某点的时间,再对J搜索,如果走到的地方火已经烧到了就不入队,直到走出边界. */ /************************************************ Author :Running_Time Created Time :2015-8-4 8:11:54 File Name :UVA_11624.cpp *************************************************/ #incl…
E - Fire! UVA - 11624 题目描述 乔在迷宫中工作.不幸的是,迷宫的一部分着火了,迷宫的主人没有制定火灾的逃跑计划.请帮助乔逃离迷宫.根据乔在迷宫中的位置以及迷宫的哪个方块着火,你必须确定火焰烧到他之前,乔是否可以离开迷宫,如果能离开他能跑多快. 乔和火每分钟移动一个方格,上.下.左.右,四个方向中的一个.火势向四个方向同时蔓延.乔可以从迷宫的任何一个边界逃离迷宫.无论是乔还是火都不会到达有墙的位置. 输入 第一行输入包含一个整数,即测试次数 每个测试用例的第一行包含两个 整数…
算法指南白书 分别求一次人和火到达各个点的最短时间 #include<cstdio> #include<cstring> #include<queue> #include<algorithm> using namespace std; ; + ; + ; int R, C; char maze[maxr][maxc]; struct Cell { int r, c; Cell(int r, int c):r(r),c(c) {} }; ,,,}; ,,-,}…