题目描述

小明有一块空地,他将这块空地划分为 nn 行 mm 列的小块,每行和每列的长度都为 1。

小明选了其中的一些小块空地,种上了草,其他小块仍然保持是空地。

这些草长得很快,每个月,草都会向外长出一些,如果一个小块种了草,则它将向自己的上、下、左、右四小块空地扩展,

这四小块空地都将变为有草的小块。请告诉小明,kk 个月后空地上哪些地方有草。

解题思路

见 BFS算法入门(走迷宫问题)

代码

#include <bits/stdc++.h>
using namespace std;
char a[10000][10000];
struct node {int x;int y;
};
queue<node> q;
int dx[] = {0, 1, 0, -1}; //左右上下
int dy[] = {1, 0, -1, 0}; //左右上下
int main() {int n, m;cin >> n >> m;for (int i = 0; i < n; i++) {for (int j = 0; j < m; j++) {cin >> a[i][j];if (a[i][j] == 'g') {node newNode;newNode.x = i;newNode.y = j;q.push(newNode);}}}int k;cin >> k;while (k--) {int len = q.size();while (len--) {int x = q.front().x;int y = q.front().y;for (int i = 0; i < 4; i++) {int tx = x + dx[i]; //周边节点的X轴int ty = y + dy[i]; //周边节点的y轴if (a[tx][ty] == '.') {a[tx][ty] = 'g';node newNode;newNode.x = tx;newNode.y = ty;q.push(newNode);}}q.pop();}}for (int i = 0; i < n; i++)for (int j = 0; j < m; j++)cout << a[i][j];cout << endl;return 0;
}

BFS算法 蓝桥杯长草问题相关推荐

  1. 蓝桥杯-长草-代码(BFS)

    一:题目 题目描述 小明有一块空地,他将这块空地划分为 nn 行 mm 列的小块,每行和每列的长度都为 1. 小明选了其中的一些小块空地,种上了草,其他小块仍然保持是空地. 这些草长得很快,每个月,草 ...

  2. 算法-蓝桥杯习题(5-1)

    蓝桥杯习题 目录 入门训练(详见 算法-蓝桥杯习题(1-1))Go 基础练习(详见 算法-蓝桥杯习题(2-1))Go 基础练习(详见 算法-蓝桥杯习题(2-2))Go 算法训练(详见 算法-蓝桥杯习题 ...

  3. 算法-蓝桥杯习题(3-2)

    蓝桥杯习题 目录 入门训练(详见 算法-蓝桥杯习题(1-1))Go 基础练习(详见 算法-蓝桥杯习题(2-1))Go 基础练习(详见 算法-蓝桥杯习题(2-2))Go 算法训练(详见 算法-蓝桥杯习题 ...

  4. 算法-蓝桥杯习题(3-1)

    蓝桥杯习题 目录 入门训练(详见 算法-蓝桥杯习题(1-1))Go 基础练习(详见 算法-蓝桥杯习题(2-1))Go 基础练习(详见 算法-蓝桥杯习题(2-2))Go 算法训练(详见 算法-蓝桥杯习题 ...

  5. 算法-蓝桥杯习题(2-2)

    蓝桥杯习题 目录 入门训练(详见 算法-蓝桥杯习题(1-1))Go 基础练习(详见 算法-蓝桥杯习题(2-1))Go 基础练习(详见 算法-蓝桥杯习题(2-2))Go 算法训练(详见 算法-蓝桥杯习题 ...

  6. 史丰收算法 - 蓝桥杯

    欢迎访问我的新博客:http://www.milkcu.com/blog/ 原文地址:http://www.milkcu.com/blog/archives/lanqiao-2014pa-4.html ...

  7. java dfs算法蓝桥杯题_【蓝桥杯省赛JavaB组真题详解】四平方和(2016)_疼疼蛇的博客-CSDN博客...

    原文作者:疼疼蛇 原文标题:[蓝桥杯省赛JavaB组真题详解]四平方和(2016) 发布时间:2021-02-26 15:00:01 题目描述 四平方和 四平方和定理,又称为拉格朗日定理: 每个正整数 ...

  8. 蓝桥杯java龟兔赛跑_算法-蓝桥杯习题(一)

    1 /* 2 基础练习 十六进制转八进制3 4 问题描述5 给定n个十六进制正整数,输出它们对应的八进制数.6 输入格式7 输入的第一行为一个正整数n (1<=n<=10).8 接下来n行 ...

  9. 蓝桥杯练习系统习题-算法训练5

    文章推荐 精选java等全套学习资源 精选java电子图书资源 精选大数据学习资源 java项目练习精选 蓝桥杯练习系统习题-算法训练5 题目搜索方式:Ctrl+F--> 输入题目名称-> ...

最新文章

  1. 面试官问:MySQL 的自增 ID 用完了,怎么办?
  2. Linux 升级 Python 至 3.x
  3. RESTful Web 服务 - 安全性
  4. PPT 下载 | 神策数据杜明翰:打造趁手、好用的标签用户画像系统
  5. 如何在Windows上设置BitLocker加密
  6. “约见”面试官系列之常见面试题第二十五篇之对vue-router的理解(建议收藏)
  7. python海贼王logo_Python 实现的下载op海贼王网的图片(网络爬虫)
  8. Scrum指南更新:Ken Schwaber、Jeff Sutherland访谈
  9. python多线程运用
  10. 从Java角度学JavaScript
  11. 新“开门七件事”出炉 快递小哥见证社会巨变
  12. 算加权成绩(MATLAB)
  13. 计算机公式固定数值符号,【2人回答】Excel如何锁定,如何Excel某计算公式中锁定其中一个数值?-3D溜溜网...
  14. HTML+CSS个人静态网页设计
  15. 平板/笔记本亮度调节工具halo(WINDOWS)
  16. 链接库 -L -l -I -i的作用及区别
  17. 招投标知识分享:影响投标报价编制的8大重要因素
  18. 考拉海购成重构互联网版图的最大“变量”
  19. python count函数时间复杂度_Python之时间复杂度
  20. dijkstra迪杰斯特拉算法(邻接表法)

热门文章

  1. 给一条直线和一个椭圆的方程,它们相交于两点,求交点与原点所构成的三角形的面积的最大值
  2. python取矩阵的一部分_Python 实现取矩阵的部分列,保存为一个新的矩阵方法
  3. Plone学习笔记 ( by quqi99 )
  4. 影院服务器linux系统怎么安装,私人家庭影院之路 - 篇一:服务器安装Rutorrent(PT盒子)Seedbox教程...
  5. android+ios+账号互通,原神数据互通吗?PC安卓iOS账号通用情况说明
  6. 2020-09-08
  7. 稳定,实际是暴风雨来临前的死寂
  8. 统计学习方法——均值、方差、标准差及协方差、协方差矩阵、相关系数
  9. :I/O中断处理过程包括哪几个阶段?中断服务程序流程分为哪几部分?
  10. html5学习之多媒体播放