Test1.A

Time Limit: 1000ms   Memory limit: 65536K  有疑问?点这里^_^

题目描述

sdut 2274:http://acm.sdut.edu.cn/sdutoj/problem.php?action=showproblem&problemid=2274

给定一个2行n列的棋盘,从上到下行号为1..2,从左到右列号为1..n。有些格子可走,有些格子不可走。可走的格子用'.'表示,不可走的格子用'W'表示。现在路人甲想从格子(1,1)走到格子(1,n),问是否可以走到,如果可以,输出'YES',否则输出'NO'。(仅可以向相邻的且有公共点的可走格子移动)

输入

 第一行包含一个整数T,表示测试数据的组数。

每组数据第一行仅包含一个整数n,表示有多少列。(n<=100)
每组数据第二到第三行每行包含n个字符,仅含.和W,表示棋盘。
数据保证第一列和最后一列的格子均为.。

输出

 每组数据的输出占一行。

如果可以从(1,1)到(1,n),则输入YES,否则输出NO。

示例输入

1
3
.W.
.W.

示例输出

NO
 #include<iostream>
#include<stdlib.h>
#include<string.h>
#include<stdio.h>
using namespace std;
int flag;
char f[][];
int visited[][];
int hang[]= {,-,-,-,,,,};
int lie[]= {-,-,,,,,-};
int n;
void dfs(int h,int l)
{
visited[h][l]=;
int i;
for(i=; i<=; i++)
{
int h1=h+hang[i];
int l1=l+lie[i];
if(h1>=&&h1<=&&l1>=&&l1<=n)
if(f[h1][l1]=='.'&&visited[h1][l1]==)
{
if(h==&&l==n)
{
flag=;
return ;
}
else
dfs(h1,l1);
}
}
visited[h][l]=;
}
int main()
{
int zong ;
cin>>zong;
while(zong--)
{
int i,j;
flag=;
memset(&f,'W',sizeof(f));
memset(&visited,,sizeof(visited));
cin>>n;
for(i=; i<=; i++)
{
for(j=; j<=n; j++)
cin>>f[i][j];
fflush(stdin);
}
dfs(,);
if(flag==)cout<<"YES"<<endl;
else cout<<"NO"<<endl;
}
return ;
}

本题应该注意的是八个方向的问题。

test1.A[【dfs简单题】的更多相关文章

  1. HDU1241&POJ2386 dfs简单题

    2道题目都差不多,就是问和相邻所有点都有相同数据相连的作为一个联通快,问有多少个连通块 因为最近对搜索题目很是畏惧,总是需要看别人代码才能上手,就先拿这两道简单的dfs题目来练练手,顺便理一理dfs的 ...

  2. LeetCode Generate Parentheses 构造括号串(DFS简单题)

    题意: 产生n对合法括号的所有组合,用vector<string>返回. 思路: 递归和迭代都可以产生.复杂度都可以为O(2n*合法的括号组合数),即每次产生出的括号序列都保证是合法的. ...

  3. Curling 2.0(DFS简单题)

    题目链接: https://vjudge.net/problem/POJ-3009 题目描述: On Planet MM-21, after their Olympic games this year ...

  4. POJ 1321 棋盘问题(DFS板子题,简单搜索练习)

    棋盘问题 Time Limit: 1000MS   Memory Limit: 10000K Total Submissions: 44012   Accepted: 21375 Descriptio ...

  5. 【BZOJ】【4066】简单题(强制在线)

    KD-Tree KD-Tree的进阶姿势戳这里 http://zyfzyf.is-programmer.com/posts/92431.html 为啥有种线段树&平衡树的即视感……(树形结构的 ...

  6. 【BZOJ1176】[Balkan2007]Mokia/【BZOJ2683】简单题 cdq分治

    [BZOJ1176][Balkan2007]Mokia Description 维护一个W*W的矩阵,初始值均为S.每次操作可以增加某格子的权值,或询问某子矩阵的总权值.修改操作数M<=1600 ...

  7. bzoj3687简单题(dp+bitset优化)

    3687: 简单题 Time Limit: 10 Sec  Memory Limit: 512 MBSubmit: 861  Solved: 399[Submit][Status][Discuss] ...

  8. 咸鱼的ACM之路:DFS水题集

    DFS的核心就是从一种状态出发,转向任意的一个可行状态,直到达到结束条件为止.(个人理解) 下面全是洛谷题,毕竟能找到测试点数据的OJ我就找到这一个....在其他OJ上直接各种玄学问题... P159 ...

  9. BZOJ 2683: 简单题

    2683: 简单题 Time Limit: 50 Sec  Memory Limit: 128 MBSubmit: 913  Solved: 379[Submit][Status][Discuss] ...

随机推荐

  1. win8_64下安装paramiko

    win8_64下安装paramiko C:\Python35\Scripts>easy_install paramiko 提示 C:\Python35\Scripts>python Pyt ...

  2. 安装完eos出的问题

    Failed to load JavaHL Library.These are the errors that were encountered:no msvcp100 in java.library ...

  3. 《oracle每日一练》Oracle DBLink连接数过多的问题(Ora-02020)

    本文转自Oracle DBLink连接数过多的问题(Ora-02020) 今天在处理资料同步问题,需要将其它几个DB Server的资料同步到一个目地资料库,采用的方式是:DBLink+Job ,然而 ...

  4. Majority Number I & || && |||

    Majority Number Given an array of integers, the majority number is the number that occurs more than ...

  5. rebot的使用

    rebot简要使用方法介绍 在介绍rebot前,首先说一下RobotFramework(后称RF)的主要输出文件.   当我们执行完一个RF脚本后,RF会输出3种文件.分别是Output.Log和Re ...

  6. MongoDB 分片的原理、搭建、应用

    一.概念: 分片(sharding)是指将数据库拆分,将其分散在不同的机器上的过程.将数据分散到不同的机器上,不需要功能强大的服务器就可以存储更多的数据和处理更大的负载.基本思想就是将集合切成小块,这 ...

  7. 修改UINavigationController返回按钮颜色

    系统默认颜色是蓝色的 视觉效果非常难看 在push进的ViewController中写 //修改UINavigationController的文字颜色 self.navigationControlle ...

  8. 使用iScroll时,input等不能输入内容的解决方法

    做移动平台的应用,使用iscroll使屏幕上下滑动.发现当使用iscroll后,input等不能输入内容了.只要在iscroll.js文件中加入如下代码就ok了. function allowForm ...

  9. jsp页面路径问题

    jsp路径默认不是项目跟路径 一. <%@ page language="java" import="java.util.*" pageEncoding= ...

  10. 【mongo】drop不释放磁盘空间

    用drop删除mongo的collection后,其size归零,但是storage仍然是原大小,磁盘空间没有被释放. 要用下面命令释放无用的磁盘空间 mongod -repair