Codeforces 585B Phillip and Trains(dp)
2015-11-02 10:54
417 查看
题目链接:Codeforces 585B Phillip and Trains
代码
#include <cstdio> #include <cstring> #include <queue> #include <vector> #include <algorithm> using namespace std; const int maxn = 105; const int dir[3] = {-1, 0, 1}; typedef pair<int,int> pii; int N, K, vis[maxn][3]; char G[3][maxn]; bool judge () { queue<pii> que; memset(vis, 0, sizeof(vis)); for (int i = 0; i < 3; i++) if (G[i][0] == 's') { que.push(make_pair(0, i)); vis[0][i] = 1; } while (!que.empty()) { pii cur = que.front(); que.pop(); int u = cur.first * 3; int h = cur.second; //printf("%d %d\n", u, h); if (u + 1 >= N) return true; if (G[h][u+1] != '.') continue; for (int i = 0; i < 3; i++) { int vh = h + dir[i], vv = u+1; if (vh < 0 || vh >= 3) continue; bool flag = true; for (int j = 0; j <= 2 && flag; j++) { if (vv + j >= N) return true; if (G[vh][vv+j] != '.') flag = false; } if (flag) { int t = (vv + 2) / 3; if (!vis[t][vh]) { que.push(make_pair(t, vh)); vis[t][vh] = 1; } } } } return false; } int main () { int cas; scanf("%d", &cas); while (cas--) { scanf("%d%d", &N, &K); for (int i = 0; i < 3; i++) scanf("%s", G[i]); printf("%s\n", judge() ? "YES" : "NO"); } return 0; }
相关文章推荐
- AEAI ESB V3.5.4开源发布,应用集成平台
- AEAI ESB V3.5.4开源发布,应用集成平台
- mac终端打开出现问题:[forkpty: Resource temporarily unavailable]
- Kafka错误4_ 远程链接Kafka时报错Failed to send messages after 3 tries
- LeetCode 011 Container With Most Water
- 8.8.2 EXPLAIN Output Format 优化输出格式
- kafka.common.ConsumerRebalanceFailedException异常解决
- [Rails Level 2] Ground up
- Daily Scrum (2015/11/1)
- 如何通过AIDL实现跨应用绑定Service
- Daily Scrumming* 2015.11.1(Day 13)
- Daily Scrumming* 2015.10.31(Day 12)
- 【Alpha】Daily Scrum Meeting第二次
- 【Alpha】Daily Scrum Meeting第二次
- log4j:ERROR Failed to load driver问题
- tail 命令
- 软RAID管理命令mdadm详解
- RAID学习笔记
- DataInputStream和DataOutputStream的简单使用
- Daily Scrum 11.1