P3027.查找接口成功率最优时间段(100分)
题目描述
服务之间交换的接口成功率作为服务调用关键质量特性,某个时间段内的接口失败率使用一个数组表示,数组中每个元素都是单位时间内失败率数值,数组中的数值为 0 ~ 100 的整数,给定一个数值( minAverageLost )表示某个时间段内平均失败率容忍值,即下均失败率小于等于 minAverageLost ,找出数组中最长时间段,如果未找到则直接返回 NULL。
输入描述
输入有两行内容,第一行为(minAverageLost),
第二行为(数组),数组元素通过空格(“ “)分隔,minAverageLost及数组中元素取值范围为 0−100的整数,数组元素的个数不会超过 100 个
输出描述
找出平均值小于等于 minAverageLost 的最长时间段,输出数组下标对,格式($beginindex )-(endindx)(下标从 0 开始),如果同时存在多个最长时间段,则输出多个下标对与下标对之间使用空格(” ”)拼接,多个下标对按下标对从小到大排序。
样例1
输入
1
0 1 2 3 4
输出
0-2
说明:
A、输入解释: minAverageLost=1 ,数组[0,1,2,3,4]
B、前 3 个元素的平均值为 1 ,因此数组第一个至第三个数组下标,即 0 - 2
样例2
输入
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