zoj 2100(dfs深度优先遍历)
来源:互联网 发布:浙江师范行知学院官网 编辑:程序博客网 时间:2024/06/11 06:00
这个题和上一题类似,都是回溯,用的方法基本上相同了,其实我是先做得得这道题,回溯+递归,深度优先遍历,是看了别人的代码才写出来的,明天继续练吧,深搜
#include<stdio.h>#include<stdlib.h>#include<string.h>int map[12][12];int step[4][2]={1,0,-1,0,0,1,0,-1};int m,n,ok;int travel(){for(int i=1;i<=n;i++)for(int j=1;j<=m;j++)if(!map[i][j])return 0;return 1;}void dfs(int x,int y){map[x][y]=1;int i,a,b;if(travel()){ok=1;return;}for(i=0;i<4;i++){a=x+step[i][0];b=y+step[i][1];if(a>=1&&b>=1&&a<=n&&b<=m&&!map[a][b])dfs(a,b);}if(!ok)map[x][y]=0;return;}int main(){int i,j,flag,flag1;char t;while(scanf("%d%d",&n,&m),m!=0||n!=0){ok=0;getchar();memset(map,0,sizeof(map));for(i=1;i<=n;i++){for(j=1;j<=m;j++){scanf("%c",&t);if(t=='S')map[i][j]=1;}getchar();}dfs(1,1);if(ok)printf("YES\n");elseprintf("NO\n");}return 0;}
0 0
- zoj 2100(dfs深度优先遍历)
- 深度优先遍历DFS
- DFS-深度优先遍历
- DFS深度优先遍历
- 深度优先遍历(DFS)
- DFS 深度优先遍历
- 深度优先遍历!!DFS
- DFS 深度优先遍历
- 深度优先遍历DFS
- zoj 1004 深度优先遍历
- DFS深度优先搜索遍历
- ZOJ 3861 Valid Pattern Lock(深度优先遍历dfs,有限制条件的全排列)
- ACM-ZOJ 2412 DFS 深度优先搜索
- 深度优先遍历(DFS)和广度优先遍历(BFS)
- 图论基础-深度优先遍历DFS
- 深度优先遍历(搜索)(DFS)
- 数据结构(二) 深度优先遍历 DFS
- DFS深度优先遍历算法简单分析
- Redis深入之简单动态字符串
- AIDA64 v5.00.3300
- Git里怎么自动commit到一个新分支?
- win32汇编之内存映射文件之间的数据传递
- Eclipse开发JAVA后台+JSP前台注意事项
- zoj 2100(dfs深度优先遍历)
- 码农之路:我早该做好的5件事
- 硬件浏览器-UIXO开发框架的使命之二
- 2014.12.17学习笔记
- jsp的动作指令
- Maven项目搭建及常用包添加
- 计蒜客012-最后一个单词的长度
- Serializable和Externalizable
- 打印输入中单词长度的直方图