4.19华为OD机试真题 新系统 - WIFI设备网络规划 (JavaPyCC++JsGo)

WIFI设备网络规划

2026 华为OD机试真题 4月19日华为OD上机新系统考试真题 200 分题型

点击查看华为 OD 机试真题完整目录:2026最新华为OD机试新系统卷 + 双机位C卷 真题题库目录|全覆盖题库 + 逐点算法考点详解

题目描述

WIFI网络中,专业的网络规划不仅可以提升业务体验,还可以减少部署成本。把办公区可以看作一个n* m的网格,部分网格包含墙壁(无法放置AP(WI一FI设备),部分为空地(可以放置AP)。每个AP覆盖范围是一个3*3的正方形(包括自身位置、上下左右、以及对角线区域),且AP和AP的覆盖区域不能重叠,防止相互干扰。

现在给定一个mx n(不超过50 * 50)的网络布局图(墙壁用字符#表示,空地用字符.表示),请设计一个算法,计算最少放置多少数量的AP来覆盖所有空地?如果不能按条件完成覆盖,请返回-1。

2026 华为OD机试真题 4月19日华为OD上机新系统考试真题 200 分题型

输入描述

第一行输入 m n

接下来m行输入每一行字符

输出描述

最少放置多少数量的AP来覆盖所有空地?如果不能按条件完成覆盖,请返回-1。

示例1

输入

复制代码
7 7
.......
.......
.......
...#...
.......
.......
.......

输出

复制代码
1

说明

放置一个 AP 在 (1, 1) 位置即可覆盖周围 3x3 区域。

示例2

输入

复制代码
5 5
..#..
..#..
..#..
..#..
..#..

输出

复制代码
4

说明

解题思路

核心思想

该问题可以建模为一个精确覆盖问题(Exact Cover Problem) 的变体。我们需要在网格中的空地(.)上放置最少数量的 AP,使得: 1. 每个 AP 覆盖其中心周围的 3 \\times 3 区域。 2. 任意两个 AP 的覆盖区域不得重叠。 3. 所有空地必须被覆盖。

算法步骤: 1. 预处理: - 记录所有空地的位置,并分配唯一的 ID。 - 遍历每个空地位置 (i, j),将其作为 AP 的潜在中心。计算该 AP 覆盖的空地集合以及它在网格中占用的所有位置(用于重叠检查)。 - 建立映射关系:每个空地 ID 对应哪些潜在的 AP 中心可以覆盖它。

  1. 搜索逻辑 (DFS + 回溯) : - 使用深度优先搜索寻找最小的 AP 数量。 - 启发式策略 :每次选择一个尚未被覆盖且"可选覆盖方案最少"的空地进行处理。这种"最少选择优先"的策略能极大地压缩搜索空间。 - 冲突检查 :在放置一个 AP 时,检查其 3 \\times 3 的覆盖范围是否与已放置的 AP 覆盖范围重叠。 - 剪枝:如果当前已使用的 AP 数量已经达到或超过已找到的最优解,则停止当前分支的搜索。

  2. 结果判断: - 如果搜索能覆盖所有空地,记录最小值。 - 如果无法覆盖所有空地,返回 -1。

复杂度分析

  • 时间复杂度:最坏情况下是指数级的,但由于网格大小限制(50 \\times 50)以及"不重叠"的强约束,实际搜索空间会被大幅削减。启发式搜索在处理此类精确覆盖问题时通常表现良好。
  • 空间复杂度O(M \\times N),用于存储网格状态、空地索引及递归
相关推荐
LaughingZhu4 小时前
Product Hunt 每日热榜 | 2026-07-27
人工智能·深度学习·神经网络·搜索引擎·产品运营
万里鹏程转瞬至4 小时前
论文简读:Boogu-Image 图像生成与编辑模型
论文阅读·深度学习·aigc
SimpleLearingAI6 小时前
DiT:Diffusion Transformer原理简介
人工智能·深度学习·transformer
phltxy7 小时前
LangChain_Agent中间件实战
人工智能·python·深度学习·语言模型·中间件·langchain
workflower8 小时前
从幻觉,到现实
人工智能·深度学习·机器学习·设计模式·机器人
小保CPP8 小时前
OpenCV C++基于极值区域滤波算法的场景文本检测(OCR)
c++·人工智能·opencv·算法·计算机视觉·ocr
伍树明8 小时前
NER 序列标注横向评测:BERT (Linear/CRF) VS 大模型 LoRA 微调 + API 方案实测对比
人工智能·深度学习·bert
盼小辉丶9 小时前
PyTorch强化学习实战(20)——优势演员-评论家(Advantage Actor-Critic, A2C)
pytorch·深度学习·强化学习·优势演员-评论家算法
-拟墨画扇-9 小时前
神经网络 | ⑬ 超参数验证:找到最佳学习超参数
深度学习·神经网络·学习
未知违规用户11 小时前
大模型项目:RAG项目实战与FlagEmbedding模型
人工智能·windows·python·深度学习