#define TEMP_FLAG 'Z' #define O_FLAG 'O' #define X_FLAG 'X' class Solution { public: void solve(vector<vector<char>> &board) { int m = board.size(); if(m <= 0) return; // deal with the border element for(int i = 0; i < m; i++) { if(i == 0 || i == m-1) { for(int j = 0; j < m; j++) infectAround(board, i, j, m); } else { infectAround(board, i, 0, m); infectAround(board, i, m-1, m); } } for(int i = 0; i < m; i++) { for(int j = 0; j < m; j++) { if(board[i][j] == O_FLAG) board[i][j] = X_FLAG; if(board[i][j] == TEMP_FLAG) board[i][j] = O_FLAG; } } } void infectAround(vector<vector<char>> &board, int i, int j, int m) { if(i<0 || i>=m || j<0 || j>=m) return; if(board[i][j] != O_FLAG) return; board[i][j] = TEMP_FLAG; infectAround(board, i-1, j, m); infectAround(board, i+1, j, m); infectAround(board, i, j-1, m); infectAround(board, i, j+1, m); } };
相关推荐
python python_leetcode题解之130_Surrounded_Regions
3. **Surrounded Regions.cpp** - 第49题,解冑处理的是矩阵中的被包围的区域。通常需要使用深度优先搜索或广度优先搜索策略,通过连通组件的概念来解决这类问题。 4. **N-Queens.cpp** - 这是经典的第51题“N皇后...
在Ruby中,通常我们创建对象是通过`new`方法来实现的,而"Surrounded"提供了更高级别的抽象,使得对象的初始化、状态管理、行为调用等操作更为简洁。例如,你可以定义一个上下文,然后在这个上下文中配置和管理相关...
标题中的“EasyXML.rar_delphi XML_easy_menj6u_surrounded5cg_xml”表明这是一个与Delphi编程语言相关的XML处理库,名为EasyXML,版本可能是4,且可能由用户"menj6u"或"surrounded5cg"涉及或讨论。描述中提到的...
leetcode做过的LeetCode的题目记录一下。对一些比较经典的题型进行分类总结。数据结构 数组 字符串 队列 链表 双指针 栈 堆 树 二叉搜索... Surrounded Regions【2020-01-09】114. Flatten Binary Tree to Linked List
rsa加密解密算法的JAVA代码实现,可以参考,
【Python-100-Days-master_by9jz_surrounded83s_catvk4_python_python教程】是一个Python学习资源,由by9jz、surrounded83s和catvk4等作者共同创建,旨在帮助初学者通过每天一小时的学习,用100天的时间系统地掌握...
将对象放在一起以实现您的用例并仅在必要时获得行为。如何思考你的物体首先,命名您要解决的问题。 然后,将您的问题分解为负责任的角色。 将您的问题名称用作类,并使用Surrounded::Context对其进行扩展它可能看...
包围Surrounded 类允许开发人员从较长的字符串中提取部分文本。 提取的部分基于特定字符周围的单词数。 输出类似于 Google 返回的结果:以特定单词为中心的文本片段。 这个类有一个公共方法: public static String ...
Nonlinear total variation based noise removal algorithms 非线性TV去噪的程序
自动检测遥感影像上的阴影区域,并将阴影区域去掉。
Tick中断是FreeRTOS进行任务调度的基础,通常通过一个定时器来实现。 3. **FreeRTOS配置**:根据项目需求,配置FreeRTOS的任务数量、堆大小、Tick频率等。这些参数可以通过修改FreeRTOSConfig.h文件中的宏定义来...
气压传感器FBM320基于C语言的参考代码
在本题解中,我们将深入探讨LeetCode面试中的一道经典题目——第130题“被包围的区域”(Surrounded Regions)。这是一道涉及Python编程语言的算法问题,通常在求职面试中用于测试候选人的逻辑思维和编程能力。在...
在分析多极导波在流体填充的钻孔中传播的问题时,本文采用的摄动方法是一种非常有力的理论工具,其核心思想是对一个相对容易处理的参考系统(本文中是各向同性状态的立方晶体介质)引入扰动来近似处理一个更复杂的...
7. leetcode-130-Surrounded-Regions.md:第130题,包围的区域,可能涉及二维数组处理和深度优先搜索(DFS)。 8. leetcode-29-Divide-Two-Integers.md:第29题,两数相除,涉及到整数除法和位运算。 9. leetcode-...
标题中的"springboot-03-elastic.rar_elastic_halfwayema_springboot_surround"表明这是一个关于Spring Boot和Elasticsearch的项目,其中可能包含了"halfwayema"和"surrounded6s3"这两个特定的概念或组件。...
concise](https://leetcode.com/problems/surrounded-regions/discuss/453448/java-concise-bfs) 137这种 deep copy, HashMap通吃不要太爽 Day 3 - Dec 17 12:28 199 Finished. 佛了 做完第一题就不想做了 12:54...
Surrounded_Regions 由四周‘O’开始向内检索,利用第三个字符对可以变换的‘O’进行暂存 Word_Lader BFS,避免DFS记录以遍历的节点错误,且保证优先找到最短的路径, 按照图的方法判断任意两个节点是否差一个字母,...