Idea

求最短路径,用bfs解题
code评测地址

AC Code

#include<iostream>
#include<cmath>
#include<algorithm>
#include<queue>
using namespace std;
#define MAX_SIZE 101
struct node {int x,y;int step;
};int dx[4]={1,0,0,-1};
int dy[4]={0,1,-1,0};char a[MAX_SIZE][MAX_SIZE];
bool vis[MAX_SIZE][MAX_SIZE];queue<node> Q;int main(){int n;cin>>n;for(int i=0;i<n;i++)for(int j=0;j<n;j++)cin>>a[i][j];node first;first.x=0;first.y=0;first.step=0;Q.push(first);vis[0][0]=1;int ans = 1000000;while(!Q.empty()){node cur = Q.front();Q.pop();int x=cur.x;int y=cur.y;if(a[x][y]=='B'){if(cur.step<ans) ans = cur.step;continue;}for(int i=0;i<4;i++){int nx = x+dx[i];int ny=y+dy[i];if(nx>=0&&nx<n&&ny>=0&&ny<n&&!vis[nx][ny]&&a[x][y]!=a[nx][ny]){node curN;curN.x=nx;curN.y=ny;curN.step=cur.step+1;Q.push(curN);vis[nx][ny]=1;}}} cout<<(ans==1000000?-1:ans);return 0;
}

蓝桥杯2015年第六届C/C++A组国赛第四题-穿越雷区相关推荐

  1. 蓝桥杯2015年第六届C/C++ B组省赛习题题解

    目录 第一题:奖券数目 第二题:星系炸弹(日期计算) 第三题:三羊献瑞(全排列) 第四题:格子中输出 第五题:九数组分数(dfs) 第六题:加法变乘法(枚举) 第七题:牌型种数(dfs+dp) 第八题 ...

  2. 问题 1825: [蓝桥杯][2015年第六届真题]穿越雷区

    问题 1825: [蓝桥杯][2015年第六届真题]穿越雷区 时间限制: 1Sec 内存限制: 128MB 提交: 310 解决: 211 题目描述 X星的坦克战车很奇怪,它必须交替地穿越正能量辐射区 ...

  3. [蓝桥杯][2015年第六届真题]生命之树(树形dp)

    题目描述 在X森林里,上帝创建了生命之树. 他给每棵树的每个节点(叶子也称为一个节点)上,都标了一个整数,代表这个点的和谐值. 上帝要在这棵树内选出一个非空节点集S,使得对于S中的任意两个点a,b,都 ...

  4. [蓝桥杯][2015年第六届真题]密文搜索(排序+二分)

    题目描述 福尔摩斯从X星收到一份资料,全部是小写字母组成. 他的助手提供了另一份资料:许多长度为8的密码列表. 福尔摩斯发现,这些密码是被打乱后隐藏在先前那份资料中的. 请你编写一个程序,从第一份资料 ...

  5. [蓝桥杯][2015年第六届真题]机器人塔(DFS)

    题目描述 X星球的机器人表演拉拉队有两种服装,A和B. 他们这次表演的是搭机器人塔. 类似: A B B A B A A A B B B B B A B A B A B B A 队内的组塔规则是: A ...

  6. [蓝桥杯][2015年第六届真题]表格计算(递归+记忆化)

    题目描述 某次无聊中, atm 发现了一个很老的程序.这个程序的功能类似于 Excel ,它对一个表格进行操作. 不妨设表格有 n 行,每行有 m 个格子. 每个格子的内容可以是一个正整数,也可以是一 ...

  7. [蓝桥杯][2015年第六届真题]穿越雷区

    文章目录 题目描述 输入 输出 样例输入 样例输出 c语言AC代码 题目描述 X星的坦克战车很奇怪,它必须交替地穿越正能量辐射区和负能量辐射区才能保持正常运转,否则将报废. 某坦克需要从A区到B区去( ...

  8. 蓝桥杯2015年第六届真题-穿越雷区

    题目 题目链接 题解 BFS模板题. 就在模板题的基础上稍微加了点限制而已. 我用的是pair存的,first表示位置,将二维压缩成一维了:second表示步数: 要求正负交替,我就采用异或的思想进行 ...

  9. 蓝桥杯2015年第六届真题——穿越雷区(C/C++)

    穿越雷区 一.题目内容 题目描述 X星的坦克战车很奇怪,它必须交替地穿越正能量辐射区和负能量辐射区才能保持正常运转,否则将报废.某坦克需要从A区到B区去(A,B区本身是安全区,没有正能量或负能量特征) ...

  10. 2018年第九届蓝桥杯C/C++ C组国赛 —— 第四题:约瑟夫环

    标题:约瑟夫环 n 个人的编号是 1~n,如果他们依编号按顺时针排成一个圆圈,从编号是1的人开始顺时针报数. (报数是从1报起)当报到 k 的时候,这个人就退出游戏圈.下一个人重新从1开始报数. 求最 ...

最新文章

  1. 更改MOSS所有列表的标题底色
  2. 【Java】详解菜单组件
  3. FreeJTS部标视频平台:JT/T808、JT/T809、JT/T796、JT/T794、JT/T1078、苏标ADAS的区别
  4. 计算机管理磁盘管理,如何打开磁盘管理?
  5. 001 makefile的使用
  6. python牛顿迭代公式_python计算牛顿迭代多项式实例分析
  7. 行内元素中的非替换行内元素和替换行内元素
  8. 超级简单的自动刷新_支付宝自动收取能量、偷能量、超级简单教程,荣耀V20亲测可用...
  9. python - 增强的格式化字符串format函数
  10. 结构体08:结构体案例2
  11. weak属性需要在dealloc中置nil么?
  12. Vue 动态加载子组件
  13. 因为mac不支持移动硬盘的NTFS格式,mac电脑无法写入移动硬盘的终极解决办法(方便好用)
  14. python环境下skimage处理高通道tif图片(10通道)
  15. 浅谈视频会议系统的运行与维护
  16. 密码学基础(数学理论)
  17. 内存条 udimm rdimm 等和 ECC 功能
  18. 大类资产配置(三)市场择时能力模型T-M
  19. jmeter接口自动化,你敢想,我敢玩
  20. mysql 连接间歇性失联解决办法

热门文章

  1. 网页布局02 盒子模型
  2. java.io.IOException: Could not find status of job:job_1534233312603_0002
  3. SLF4J源码解析-LoggerFactory(二)
  4. Unity插件学习记录 -- SW Actions
  5. 【Oracle】Oracle基本数据类型总结
  6. Extjs中引入JSP页面
  7. cello 有关状态
  8. ACL2021 | OntoED:利用本体表示学习实现低资源的事件抽取
  9. 每日算法系列【LeetCode 685】冗余连接 II
  10. 机器学习基础算法32-隐马尔科夫模型HMM