http://codeforces.com/problemset/problem/540/C

简单bfs,注意结束条件。

#include<iostream>
#include<cstdio>
#include<queue>
using namespace std; string a[];
int endx,endy,n,m,dir[][] = {-,,,-,,,,};
struct point{
int x,y;
}start;
int main()
{
cin >> n >> m;
for(int i = ;i < n;i++) cin >> a[i];
cin >> start.x >> start.y >> endx >> endy;
start.x--;
start.y--;
endx--;
endy--;
queue<point> q;
q.push(start);
while(!q.empty())
{
point now = q.front();
q.pop(); for(int i = ;i < ;i++)
{
int xx = now.x+dir[i][];
int yy = now.y+dir[i][];
if(xx == endx && yy == endy && a[xx][yy] == 'X')
{
printf("YES\n");
return ;
}
if(xx < || xx >= n || yy < || yy >= m) continue;
if(a[xx][yy] == 'X') continue;
point temp;
temp.x = xx;
temp.y = yy;
q.push(temp);
a[xx][yy] = 'X';
}
}
printf("NO\n");
return ;
}

Codeforces_540_C的更多相关文章

随机推荐

  1. kubernetes-dashboard部署

    参考资料: kubernetes官方文档 官方GitHub 创建访问用户 解决chrome无法访问dashboard 官方部署方法如下: kubectl apply -f https://raw.gi ...

  2. 菜鸟学习Fabric源码学习 — 背书节点和链码容器交互

    Fabric 1.4 源码分析 背书节点和链码容器交互 本文档主要介绍背书节点和链码容器交互流程,在Endorser背书节点章节中,无论是deploy.upgrade或者调用链码,最后都会调用Chai ...

  3. 下载并部署 ArcGIS API for JavaScript 4.10

    学习ArcGIS API for JavaScript 4.10 的第一步就是下载并部署该文件. 有的读者由于之间没接触过,不知道怎么下载和部署文件.这些读者要求作者详细的写一篇关于下载和部署的文章( ...

  4. Java带有运算符的字符串转换为Long型

    由于项目需要在配置文件中配置一个刷新时间,但是配置文件中取出来来的数据肯定是字符串,然后要将该带有运算符的字符串转换为Long型.具体代码如下: 配置文件system.properties中: ref ...

  5. Scanner使用方法

    import java.util.Scanner; //导入包 public void main (String args[]){ Scanner a=new Scanner(System.in); ...

  6. js对象转换为json格式时,js对象属性中有值为null和undefined注意事项

    当属性值为null时: 当属性值为undefined时: 只有当属性值为未定义时, js对象转换成json格式时会忽略该属性.

  7. SpringCloud之Feign(五)

    Feign简介 Feign 是一个声明web服务客户端,这便得编写web服务客户端更容易,使用Feign 创建一个接口并对它进行注解,它具有可插拔的注解支持包括Feign注解与JAX-RS注解,Fei ...

  8. git查看远程仓库和本地的区别

    git diff 你可以用 git diff 来比较项目中任意两个版本的差异. $ git diff master..test 上面这条命令只显示两个分支间的差异,如果你想找出 master , te ...

  9. 【译】如何使用Vue过渡效果来提升用户体验

    在Vue应用中添加过渡效果是一个可以使你的项目感觉更专业的简单方法.通过提升用户体验,可以使你的网站留住更多的用户以及提高转化率. 只需要简单的处理就可以获得巨大的回报,何乐而不为? 在这个指南中,我 ...

  10. MySQL 排名、分组后组内排名、取各组的前几名

    一.排名 /*普通排名:从1开始,顺序往下排*/ AS rank ) r ORDER BY score; /*并列排名:相同的值是相同的排名*/ SELECT cs.* , CASE WHEN @p= ...