zl程序教程

您现在的位置是:首页 >  前端

当前栏目

华为OD机试 - 查找单入口空闲区域(JavaScript) | 机试题+算法思路+考点+代码解析 【2023】

2023-09-11 14:20:20 时间

查找单入口空闲区域

题目

给定一个 m×n 的矩阵,由若干字符 XO构成,
X表示该处已被占据,O表示该处空闲,请找到最大的单入口空闲区域。

空闲区域是由连通的O组成的区域,位于边界的O可以构成入口,
单入口空闲区域即有且只有一个位于边界的O作为入口的由连通的O组成的区域。
如果两个元素在水平或垂直方向相邻,则称它们是“连通”的。

输入

第一行输入为两个数字,

  1. 第一个数字为行数 m,
  2. 第二个数字列数 n,两个数字以空格分隔,
    1≤m,n≤200

剩余各行为矩阵各行元素,元素为XO,各元素间以空格分隔。

输出

若有唯一符合要求的最大单入口空闲区域,输出三个数字,

  1. 第一个数字为入口行坐标(范围为 0~行数-1),
  2. 第二个数字为入口列坐标(范围为 0~列数-1),
  3. 第三个数字为区域大小,三个数字以空格分隔;

若有多个符合要求的最大单入口空闲区域,输出一个数字,代表区域的大小;
若没有,输出NULL

<