通过率 90% · 提交 10 · 通过 9
在魔法大陆东西走向的“星辰之路”上,分布着若干个冒险者聚集点,每个聚集点都有一定数量的冒险者,人数记录在数组 `mages` 中。为了方便冒险者快速传送到远方,魔法议会计划在部分聚集点上设置传送阵。 然而,由于稀有魔力水晶的数量有限,议会必须关闭 `banNum` 个聚集点的传送阵。这些被关闭的聚集点的冒险者必须前往的、仍然开放的传送阵,通过步行完成转移。 请你帮助魔法议会规划传送阵的分布,使得所有冒险者最少,并输出这个最小的总数。 输入: * 第一行输入一个整数 `n`,表示聚集点的数量,满足 `1 <= n <= 100`。 * 第二行输入 `n` 个整数,`mages[i]` 表示第 `i` 个聚集点的冒险者人数,满足 `0 <= mages[i] <= 10^5`。 * 第三行输入一个整数 `banNum`,表示需要的聚集点数量,满足 `0 <= banNum <= min(6, n - 1)`。 输出: * 输出一个整数,表示最少的步行区间总数。 示例: 输入: 5 12 7 15 4 3 2 输出: 10 说明:关闭下标为 `3` 和 `4` 的传送阵: * 下标 3 的冒险者:步行 `1` 个区间到下标 2,贡献 `4×1 = 4`; * 下标 4 的冒险者:步行 `2` 个区间到下标 2,贡献 `3×2 = 6`; * 总计 `4 + 6 = 10`。 输入: 7 5 4 5 4 6 7 9 3 输出: 14 说明:一种可行的最优方案:关闭下标为 `0`、`2`、`3` 的传送阵: * 下标 0:步行 `1` 个区间,贡献 `5×1 = 5`; * 下标 2:步行 `1` 个区间,贡献 `5×1 = 5`; * 下标 3:步行 `1` 个区间,贡献 `4×1 = 4`; * 合计 `5 + 5 + 4 = 14`。
这类题属于华为可信认证科目一方向中「可信 / DP」方向的高频题型,通常考察对「可信 / DP」的建模能力与边界条件处理。掌握本题的解题思路后,可举一反三应对同类真题方向,稳步提升机考通过率。
提示:带虚线的词点一下有通俗解释。
n,表示聚集点的数量,满足 1 <= n <= 100。n 个整数,mages[i] 表示第 i 个聚集点的冒险者人数,满足 0 <= mages[i] <= 10^5。banNum,表示需要关闭传送阵的聚集点数量,满足 0 <= banNum <= min(6, n - 1)。示例 1
输入示例
5 12 7 15 4 3 2
输出示例
10
关闭下标为 3 和 4 的传送阵:
1 个区间到下标 2,贡献 4×1 = 4;2 个区间到下标 2,贡献 3×2 = 6;4 + 6 = 10示例 2
输入示例
7 5 4 5 4 6 7 9 3
输出示例
14
一种可行的最优方案:关闭下标为 0、2、3 的传送阵:
1 个区间,贡献 5×1 = 5;1 个区间,贡献 5×1 = 5;1 个区间,贡献 4×1 = 4;5 + 5 + 4 = 14。时间限制 1000 ms · 内存限制 128 MB
本平台为独立第三方培训机构,与华为技术有限公司无任何关联;课程的服务内容与权益以购买协议为准,学习效果因个人情况而异。「华为 OD」「华为可信」等仅为对岗位与考试方向的客观描述,相关商标归各自权利人所有。
登录后可查看你在本题的历史提交,以及每次的各用例通过情况。