华为OD机试 - 查找单入口空闲区域(Java & JS & Python)
Posted 伏城之外
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了华为OD机试 - 查找单入口空闲区域(Java & JS & Python)相关的知识,希望对你有一定的参考价值。
题目描述
给定一个 m x n 的矩阵,由若干字符 ‘X’ 和 ‘O’构成,’X’表示该处已被占据,’O’表示该处空闲,请找到最大的单入口空闲区域。
解释:
空闲区域是由连通的’O’组成的区域,位于边界的’O’可以构成入口,
单入口空闲区域即有且只有一个位于边界的’O’作为入口的由连通的’O’组成的区域。
如果两个元素在水平或垂直方向相邻,则称它们是“连通”的。
输入描述
第一行输入为两个数字,第一个数字为行数m,第二个数字为列数n,两个数字以空格分隔,1<=m,n<=200。
剩余各行为矩阵各行元素,元素为‘X’或‘O’,各元素间以空格分隔。
输出描述
若有唯一符合要求的最大单入口空闲区域,输出三个数字
- 第一个数字为入口行坐标(0~m-1)
- 第二个数字为入口列坐标(0~n-1)
- 第三个数字为区域大小
三个数字以空格分隔;
若有多个符合要求,则输出区域大小最大的,若多个符合要求的单入口区域的区域大小相同,则此时只需要输出区域大小,不需要输出入口坐标。
若没有,输出NULL。
用例
华为OD机试真题 JS 实现查找单入口空闲区域2023 Q1 | 100分
所有题目均有四种语言实现。C++ 实现目录、Python实现目录、Java实现目录、JavaScript实现目录
题目
给定一个 m xn 的矩阵,由若干字符 和0构成,X表示该处已被占据,0"表示该处空闲,请找到最大的单入口空闲区域.
解释:
空闲区域是由连通的O组成的区域,位于边界的0可以构成入口,单入口空闲区域即有目只有一个位于边界的0作为入口的由连通的\'O"组成的区域。
如果两个元素在水平或垂直方向相邻,则称它们是“连通”的。输入描述:
第一行输入为两个数字,第一个数字为行数m,第二个数字列数n,两个数字以空格分隔,1 <= m,n <= 200,剩余各行为矩阵各行元素,元素为\'X\' 或O,
以上是关于华为OD机试 - 查找单入口空闲区域(Java & JS & Python)的主要内容,如果未能解决你的问题,请参考以下文章
华为OD机试真题 JS 实现查找单入口空闲区域2023 Q1 | 100分
华为OD机试模拟题用 C++ 实现 - 查找单入口空闲区域(2023.Q1)
华为OD机试 - 查找单入口空闲区域(JavaScript) | 机试题+算法思路+考点+代码解析 2023
华为OD机试真题Python实现查找单入口空闲区域真题+解题思路+代码(2022&2023)