当前位置: 首页 > news >正文

网站标题写什么作用是什么企业查天眼查在线

网站标题写什么作用是什么,企业查天眼查在线,wordpress layer 主题,建设网站电脑配置题目描述: 给你一个 m x n 的矩阵 board ,由若干字符 X 和 O 组成,捕获 所有 被围绕的区域: 连接:一个单元格与水平或垂直方向上相邻的单元格连接。区域:连接所有 O 的单元格来形成一个区域。围绕&#x…

题目描述:

给你一个 m x n 的矩阵 board ,由若干字符 'X' 和 'O' 组成,捕获 所有 被围绕的区域

  • 连接:一个单元格与水平或垂直方向上相邻的单元格连接。
  • 区域:连接所有 'O' 的单元格来形成一个区域。
  • 围绕:如果您可以用 'X' 单元格 连接这个区域,并且区域中没有任何单元格位于 board 边缘,则该区域被 'X' 单元格围绕。

通过将输入矩阵 board 中的所有 'O' 替换为 'X' 来 捕获被围绕的区域

示例 1:

输入:board = [["X","X","X","X"],["X","O","O","X"],["X","X","O","X"],["X","O","X","X"]]

输出:[["X","X","X","X"],["X","X","X","X"],["X","X","X","X"],["X","O","X","X"]]

解释:

在上图中,底部的区域没有被捕获,因为它在 board 的边缘并且不能被围绕。

示例 2:

输入:board = [["X"]]

输出:[["X"]]

提示:

  • m == board.length
  • n == board[i].length
  • 1 <= m, n <= 200
  • board[i][j] 为 'X' 或 'O'

题目链接:

. - 力扣(LeetCode)

解题主要思路:

这题我觉得有两个麻烦,第一个麻烦就是不好理解题目啥意思,其实题目的意思是:除了边边的 'O' 以及能跟其构成‘连接’的 'O',其余的全部改成 'X'。第二个麻烦就是理解完题目的意思后,怎么把符合条件的区域 'O' 和 不符合条件的区域 'O' 分隔开来,其实有个办法就是,咱们遍历边边的元素,如果有不符合条件的 'O'(边边的 'O' 以及能跟其构成‘连接’的 'O'),咱们把他改成于 'O' 'X' 无关的符号,譬如 '?' ,之后二维数组内的所有 'O' 都是符合条件的 'O'(即需要改为 'X' 的),数组内的所有 '?' 都是原本不符合条件的 'O' ,我们需要将其改回来。

解题代码:

class Solution {
public:typedef pair<int, int> PII;int dx[4]{0, 0, 1, -1};int dy[4]{1, -1, 0, 0};int m, n;void solve(vector<vector<char>>& board) {m = board.size(), n = board[0].size();// 先将与边缘的‘O‘相连的全部改为’O‘、‘X’无关的符号,譬如'?';for (int i = 0; i < n; ++i) { // 第一行和最后一行if (board[0][i] == 'O') bfs(board, 0, i );if (board[m-1][i] == 'O') bfs(board, m-1, i);}for (int j = 0; j < m; ++j) { // 第一列和最后一列if (board[j][0] == 'O') bfs(board, j, 0);if (board[j][n-1] == 'O') bfs(board, j, n-1);}// 此时二维数组board里的全部'O'全部符合题目要求,可直接改成'X'for (int i = 0; i < m; ++i) {for (int j = 0; j < n; ++j) {if (board[i][j] == '?') board[i][j] = 'O';else if (board[i][j] == 'O') board[i][j] = 'X';}}}void bfs(vector<vector<char>>& board, int r, int c){queue<PII> que;que.push(make_pair(r, c));board[r][c] = '?';while (que.size()) {auto [a, b] = que.front();que.pop();for (int i = 0; i < 4; ++i) {int x = a + dx[i];int y = b + dy[i];if (x >= 0 && x < m && y >= 0 && y < n && board[x][y] == 'O') {que.push(make_pair(x, y));board[x][y] = '?';}}}}
};

http://www.yayakq.cn/news/107485/

相关文章:

  • 江苏省网站备案电话计算机考试网页制作题
  • 外贸网站 域名后缀做网站一年赚一千万
  • 长泰县建设局网站长春软件公司排名
  • 有后台支撑的网站建设合同网站哪个公司做的
  • 网站建设效果图黄冈网站建设与推广哪家好
  • 做旅游网站课程设计报告hexo发布wordpress
  • cms免费建站系统wordpress购买后可见
  • 外贸公司英文网站建设长春电商网站建设公司
  • 电子商务网站设计要求网推公司
  • 建立个机密网站WordPress 评论框表情
  • 福田区住房和建设局官方网站怎么导入wordpress模板
  • wap医院网站建设公司页面设计
  • 网站建设 南宁泰安市最新招聘信息
  • dw中怎样做网站链接中国站免费推广入口
  • 自己注册公司一年多少费用网站推广优化排名教程
  • 商业网站开发实训报告总结网站制作好在百度里可以搜到吗
  • 阿里云模板建站iis 配置网站详解
  • 安阳那里可以制作网站专业的做网站软件
  • 推广网站最有效办法网站基础建设英文翻译
  • 案例学网页设计和网站建设公司logo在线设计免费
  • 网站推广主要是做什么关键词推广是什么意思
  • 遵义专业建站用php和mysql做网站
  • 建设网站的技术风险湖南 微网站开发与设计比赛
  • 网站空间和虚拟主机文案类的网站
  • 途牛旅游网站建设目的百度怎么打广告
  • 定制型网站开发贵阳做网站开发的公司
  • 福州网站建设推进wordpress批量修改文章内的代码
  • 周浦高端网站建设公司网络设计专业究竟好不好就业
  • 做购物网站的费用建立网站的流程
  • 郑州做网站推广哪家好中国网络优化公司排名