SDUT 1570 C 旅行(DFS)
2014-03-23 21:38
246 查看
点我看题目
题意 : 中文不详述。
思路 :就是DFS一下,只要到达终点条数就加1,然后再注意一下方向,因为我就是没注意方向WA了,只能向上向右走,x是行,所以向上是x-1,向右是y+1,因为我没弄好,结果就废了。。。。。。
View Code
题意 : 中文不详述。
思路 :就是DFS一下,只要到达终点条数就加1,然后再注意一下方向,因为我就是没注意方向WA了,只能向上向右走,x是行,所以向上是x-1,向右是y+1,因为我没弄好,结果就废了。。。。。。
#include <iostream> #include <stdio.h> #include <string.h> #include <algorithm> using namespace std; int m,n,sx,sy,ex,ey ; int mapp[30][30] ; int vis[30][30] ; int dire[2][2] = {{0,1},{-1,0}} ; int cnt ; void DFS(int x,int y) { if(x == ex && y == ey) { cnt++ ; return ; } else { for(int i = 0 ; i < 2 ; i++) { int xx = x+dire[i][0] ; int yy = y+dire[i][1] ; if(!mapp[xx][yy] && xx >= 1 && xx <= m && yy >= 1 && yy <= n && !vis[xx][yy]) { vis[xx][yy] = 1 ; DFS(xx,yy) ; vis[xx][yy] = 0 ; } } } } int main() { while(~scanf("%d %d",&m,&n)) { memset(vis,0,sizeof(vis)) ; for(int i = 1 ; i <= m ; i++) for(int j = 1 ; j <= n ; j++) scanf("%d",&mapp[i][j]) ; sx = m,sy = 1 ; ex = 1,ey = n ; vis[sx][sy] = 1; cnt = 0 ; DFS(sx,sy) ; printf("%d\n",cnt) ; } return 0; }
View Code
相关文章推荐
- SDUT-ACM 1570 C旅行
- sdut 1570 c旅行
- SDUT1570 C旅行
- SDUT 1570 C旅行
- [sdut] 1400 马的走法 dfs
- BZOJ 1570: [JSOI2008]Blue Mary的旅行( 二分答案 + 最大流 )
- SDUT_2015寒假集训_BFS&DFS_D-找朋友
- bzoj 1570: [JSOI2008]Blue Mary的旅行 分层图网络流
- 旅行_纪中2569_dfs+强连通分量
- [SDUT](3361) 数据结构实验之图论四:迷宫探索 ---DFS(图)
- SDUT_2015寒假集训_BFS&DFS_A-数据结构实验图论一:基于邻接矩阵的广度优先搜索遍历
- [SDUT](3469)深度优先搜索练习之神奇的矩环 ---DFS(图)
- SDUT 1265-马停下过河卒(DFS)
- SDUT_2015寒假集训_BFS&DFS_J-Catch That Cow
- [SDUT](1269)走迷宫 ---DFS(图)
- Cash Cow【dfs较难题应用】【sdut2721】
- SDUT--找朋友(BFS&&DFS)
- BZOJ 1570 JSOI 2008 Blue Mary的旅行 网络流
- sdut1269 走迷宫(dfs)
- SDUT 2152 Balloons(DFS 四面+八面) 2010年山东省第一届ACM大学生程序设计竞赛