通过率 52% · 提交 878 · 通过 455
小慕在维护一个微服务系统时,发现服务之间接口调用的成功率是衡量系统质量的关键指标。他记录了某个时间段内每个单位时间的接口失败率,这些数据用一个整数数组表示,数组中的每个元素取值在 0 到 100 之间。现在,小慕设定了一个平均失败率容忍值 ,要求找出数组中满足平均失败率小于等于该容忍值的最长连续时间段。如果不存在这样的时间段,则返回 NULL。
这类题属于华为 OD 机考真题方向中「200分 / 2024E」方向的高频题型,通常考察对「200分 / 2024E」的建模能力与边界条件处理。掌握本题的解题思路后,可举一反三应对同类真题方向,稳步提升机考通过率。
提示:带虚线的词点一下有通俗解释。
输入有两行内容,第一行为minAverageLost,第二行为数组,数组元素通过空格" "分隔,minAverageLost 及数组中元素取值范围为 0~100 的整数,数组元素的个数不会超过 100 个。
找出平均值小于等于 minAverageLost 的最长时间段,输出数组下标对,格式{beginIndex}-{endIndx}(下标从 0 开始),如果同时存在多个最长时间段,则输出多个下标对且下标对之间使用空格" "拼接,多个下标对按下标从小到大排序。
示例 1
输入示例
2 0 0 100 2 2 99 0 2
输出示例
0-1 3-4 6-7
A、输入解释:minAverageLost = 2,数组[0, 0, 100, 2, 2, 99, 0, 2] B、通过计算小于等于 2 的最长时间段为:数组下标为 0-1 即[0, 0],数组下标为 3-4 即[2, 2],数组下标为 6-7 即[0, 2],这三个部分都满足平均值小于等 2 的要求,因此输出 0-1 3-4 6-7
示例 2
本平台为独立第三方培训机构,与华为技术有限公司无任何关联;课程的服务内容与权益以购买协议为准,学习效果因个人情况而异。「华为 OD」「华为可信」等仅为对岗位与考试方向的客观描述,相关商标归各自权利人所有。
输入示例
1 0 1 2 3 4
输出示例
0-2
A、输入解释:minAverageLost=1,数组[0, 1, 2, 3, 4] B、前 3 个元素的平均值为 1,因此数组第一个至第三个数组下标,即 0-2
时间限制 1000 ms · 内存限制 128 MB
© 2026 广州慕课网络科技有限公司 · 吴师兄学算法官网 版权所有