求从左上角到右下角的最短路径,1是路,2是墙,只可以前后左右的走。dfs:#include<cstdio>#include<cstring>usingnamespacestd;intmaze[5][5];intans;boolvis[5][5];constintdir[4][2]={0,1,0,-1,1,0,-1,0};structnode{intx,y;}way[30],
原创
2018-04-23 12:30:30
991阅读
点赞
迷宫问题
Time Limit: 1000MS
Memory Limit: 65536K
Total Submissions: 10783
Accepted: 6435
Description
定义一个二维数组:
int maze[5][5] = {
0, 1, 0, 0, 0,
0, 1, 0, 1, 0,
0,
原创
2015-07-20 10:53:11
46阅读
题目:http://poj.openjudge.cn/practice/C18A/ 据说正解是差分约束,转化的过程还要用到标准型、对偶型什么的知识,暂时还不太懂... 但也有贪心DP做法,有个结论:一个点要么没有,要么有7个小时(但不太会证明...); 然后就DP即可。 代码如下:
转载
2018-07-07 15:49:00
64阅读
2评论
迷宫问题 Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 39168 Accepted: 21898 Description 定义一个二维数组: int maze[5][5] = { 0, 1, 0, 0, 0, 0, 1, 0,
转载
2019-03-11 22:03:00
28阅读
2评论
题目大意:中文题。。。定义一个二维数组: 它表示一个迷宫,其中的1表示墙壁,0表示可以走的路,只能横着走或竖着走,不能斜着走,要求编程序找出从左上角到右下角的最短路线。解题思路:建立一个模拟队列的结构体,其中包括x,y,pre。pre用于存储前一步的位置(结构体数组的位)。全局变量,标记数组,头尾位置。bfs先将起点读入,pre为-1。然后循环将起点上下左右判断是否能移动,能移动存入结构体,pre
原创
2021-12-01 16:15:12
110阅读
简单题View Code #include <iostream>#include <cstdio>#include <cstdlib>#include <cstring>using namespace std;#define maxn 10struct Point{ int x, y;}q[maxn * maxn], stk[maxn * maxn];int map[maxn][maxn];int cost[maxn][maxn];int from[maxn][maxn];int dir[4][2] ={{ 1, 0 },{ 0, 1 },{ -
转载
2011-07-03 21:39:00
28阅读
2评论
定义一个二维数组: int maze[5][5] = { 0, 1, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0, 1, 0,};它表示一个迷宫,其中的1表示墙壁,0表示可以走的路,只能横着走或竖着走,不能斜着走,要求编...
转载
2015-04-04 17:07:00
47阅读
2评论
定义一个二维数组: int maze[5][5] = { 0, 1, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0, 1, 0, }; 它表示一个迷宫,其中的1表示墙壁,0表示可以走的路,只能横着走或竖着走,不能斜着走,要
转载
2017-07-24 17:32:00
34阅读
题目已经说了有唯一的解。所以仅仅须要在找的过程中保存当前这个点前面的那个的点在队列中的位置
然后再输出的时候运用递归输出就能够了。
迷宫问题
Time Limit: 1000MS
Memory Limit: 65536K
Total Submissions: 8238
Accepted: 4848
Description
定义一个二维数组: int maze[5][
转载
2017-06-30 20:33:00
29阅读
2评论
题目定义一个二维数组:int maze[5]...
转载
2019-03-19 08:15:00
66阅读
2评论
迷宫问题 Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 16238 Accepted: 9692 Description 定义一个二维数组: int maze[5][5] = { 0, 1, 0, 0, 0, 0, 1, 0,
转载
2016-08-22 23:53:00
52阅读
2评论
#include<iostream>#include<deque>using namespace std;struct node{ int path[25][2]; int t;}ans[30];int arr[5][5],vis[5][5],pos[4][2]={{-1,0},{0,1},{1,0},{0,-1}};int main(){ for(int i=0;i<5;++i) for(int j=0;j<5;++j) cin>>arr[i][j]; deque<node> col; int m=1; ans[0].path[0]
转载
2011-07-22 20:20:00
34阅读
2评论
第二道广搜的问题虽然思路很清晰,可真要自己把代码敲出来并不是一件容易的事用一维数组模拟一个队列,head和tail分别记录队首和队尾先将迷宫的起点入队,然后向四个方向拓展,如果没有出界或者没有遇到墙壁,那么入队,然后队首出队知道搜到迷宫的出口为止 1 //#define LOCAL 2 #inclu...
转载
2014-08-11 09:57:00
30阅读
2评论
题目定义一个二维数组:int maze[5]...
转载
2019-03-19 08:15:00
72阅读
2评论
【题意】中文题。。。【思路】简单bfs加路径记录。【AC代码】#include #include #include #include
原创
2022-04-20 10:27:45
94阅读
题目定义一个二维数组:int maze[5][5] = { 0, 1, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0, 1, 0,};它表示一个迷宫,其中的1表示墙壁,0表示可以走的路,只能横着走或竖着走,不能斜着走,要求编程序找出从左上角到右下角的最短路线。Input一个5 × 5的...
原创
2021-08-10 10:04:04
87阅读
迷宫问题 定义一个二维数组
原创
2022-06-02 13:16:07
69阅读
迷宫问题Time Limit: 1000MSMemory Limit: 65536KTotal Submissions: 8154Accepted: 4804Description
定义一个二维数组: int maze[5][5] = { 0, 1, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0, 1, 0,
转载
2022-01-12 14:31:16
21阅读
题目定义一个二维数组:int maze[5]...
转载
2019-03-19 08:15:00
53阅读
2评论
题目可以说是很经典的一道打印迷宫路径问题了,具体的思路就是定义结构体,里面存当前的位置和当前位置的前一个位置,等找到终点之后再把路径上的每一个点输出就好了,具体的代码如下:#include<iostream>#include<cstp[5][5],vis[5...
原创
2023-05-26 15:00:21
99阅读