CODEFORCES 197D Infinite Maze
来源:互联网 发布:视频图像分析算法 编辑:程序博客网 时间:2024/06/06 10:03
题目:http://codeforces.com/contest/197/problem/D
题意:在迷宫找一条可以循环的路,上下可以连接起来
分析:像一种贪吃蛇游戏,贪吃蛇可以从下面出去,从上面出来。。。找一条使得贪吃蛇不死亡的走法。若找得到输出Yes,否输出No
#include <bits/stdc++.h>using namespace std;int n,m,S[2];int num[1505][1505][2];bool s[1505][1505];int p[4][2] = {0,-1,1,0,0,1,-1,0};void dfs(int x,int y){ if(num[x%n][y%m][0] == -1 && num[x%n][y%m][1] == -1) { num[x%n][y%m][0] = x;num[x%n][y%m][1] = y; } else if(num[x%n][y%m][0] != x || num[x%n][y%m][1] != y)//此为或。。。检查了老久才发现 { printf("Yes\n"); exit(0); } else return ; //printf("x = %d y = %d\n",x,y); for(int i=0;i<4;i++) { if(s[(x+p[i][0])%n][(y+p[i][1])%m]) dfs(x+p[i][0],y+p[i][1]); }}int main(){ scanf("%d %d",&n,&m); char ch; getchar(); for(int i=0;i<n;i++) { for(int j =0;j<m;j++) { ch = getchar(); if(ch == '.') s[i][j] = true; if(ch == 'S') { s[i][j] = true; S[0] = i+n*m;//防止取模出现负值 S[1] = j+n*m; } } getchar(); } memset(num,-1,sizeof(num));dfs(S[0],S[1]); //5 memset(num,false,sizeof(num));bfs(S[0],S[1]); printf("No\n"); return 0;}
0 0
- CODEFORCES 197D Infinite Maze
- codeforces 197D Infinite Maze dfs
- CodeForces 197D Infinite Maze (BFS+状态压缩)
- Infinite Maze CodeForces
- Codeforces Round #124 (Div. 2)D. Infinite Maze
- Codeforces 196 B. Infinite Maze
- CodeForces 404E Maze 1D
- CodeForces 413E Maze 2D
- codeforces 715D. Create a Maze
- Maze(CodeForces
- Codeforces Round #237 (Div. 2) E. Maze 1D
- Infinite Inversions CodeForces
- Codeforces 540 E. Infinite Inversions
- Codeforces 622A Infinite Sequence
- CodeForces 622A Infinite Sequence
- CodeForces 622A Infinite Sequence
- CodeForces 622A Infinite Sequence
- CodeForces 622A-Infinite Sequence
- 南阳理工学院--语言入门--6174问题
- HLS_ug871笔记
- maven工程构建dubbo服务jar包示例
- WebView
- Rx学习笔记和总结
- CODEFORCES 197D Infinite Maze
- VS2010 MPI并行环境设置
- [树形dp] poj 2486 Apple Tree
- mysql修改root密码
- 2016 Multi-University Training Contest 1 1005 Necklace (hdu5727)【枚举+匹配】
- C - C
- Codeforces Round #364 (Div. 2) C. They Are Everywhere (尺取法)
- oracle expdp impdp总结
- Eclipse中实现Tomcat热部署