【一周搜索】poj3984迷宫问题 (dfs)
2016-11-26 16:49
232 查看
鉴于最近一周要打搜索的题目,索性也把第一个搜索入门题贴出来。。在实验室憋了一个小时。。敲掉这个入门==图论好难啊
maya= =
感觉是废狗了
题意大概是从(0,0)到(4,4)位置的路径(每个坐标点)
dfs搞搞就可以啦:)
链接:http://poj.org/problem?id=3984
maya= =
感觉是废狗了
题意大概是从(0,0)到(4,4)位置的路径(每个坐标点)
dfs搞搞就可以啦:)
链接:http://poj.org/problem?id=3984
#include<iostream> #include<stack> #include<cstring> #include<cstdio> using namespace std; typedef __int64 LL; LL mapn[5][5]; bool vis[5][5]; struct node{ int x,y; }; stack <node> p; void readin(){ for(int i=0;i<5;i++){ for(int j=0;j<5;j++){ cin>>mapn[i][j]; } } } void dfs(int x,int y){ if(!vis[x][y]){ node cur;cur.x=x;cur.y=y; vis[x][y]=1;p.push(cur); } if(x==4&&y==4){ return; } if(!vis[x+1][y]&&!mapn[x+1][y])dfs(x+1,y); else if(!vis[x][y+1]&&!mapn[x][y+1])dfs(x,y+1); else{ p.pop(); node cur=p.top(); dfs(cur.x,cur.y); } } int main(){ memset(vis,0,sizeof(vis)); readin(); dfs(0,0); stack<node> q ; while(!p.empty()){ q.push(p.top()); p.pop(); } while(!q.empty()){ printf("(%d, %d)\n",q.top().x,q.top().y); q.pop(); } return 0; }
相关文章推荐
- POJ3984 迷宫问题(深搜DFS+广搜BFS)搜索记录坐标,坑
- H - 迷宫问题 POJ3984 (BFS+DFS)
- POJ3984 迷宫问题(DFS)
- poj3984迷宫问题 入门搜索bfs
- 基础搜索——dfs,bfs(全排列与迷宫问题)
- 迷宫问题(第一次DFS搜索)
- poj3984(DFS写法) 迷宫路径问题
- POJ3984迷宫问题(搜索)
- 搜索--poj3984 迷宫问题(广搜C+深搜C++)+HDU 1372 Knight Moves
- 迷宫问题---深度搜索(dfs)
- poj3984 迷宫问题(简单搜索+记录路径)
- 【搜索-广搜】poj3984 迷宫问题
- Poj3984- dfs -迷宫问题
- 搜索入门之dfs--经典的迷宫问题解析
- FZU 1205(小鼠迷宫问题)BFS+DFS的基本综合运用(同一题目中体现两种搜索方法的特点)
- POJ3984迷宫问题(搜索)
- 迷宫问题[1] DFS 不保证最短路径
- HDOJ-1253 基础搜索问题总结[DFS()+BFS()]
- (dfs+bfs+记录)迷宫问题(P3984)
- UVa 10603 - Fill,经典倒水问题+隐式图搜索+dfs