当前位置: 首页 > news >正文

华为OD机试真题-查找接口成功率最优时间段-2023年OD统一考试(C卷)--Python3--开源

题目:
在这里插入图片描述

考察内容:
for + 时间窗口+list(append, sum, sort)+ join
代码:

"""
题目分析:最长时间段
且平均值小于等于minLost同时存在多个时间段,则输出多个,从大到小排序未找到返回 NULL
输入:
int minAveragetLost
list输出:数组下标对 beginIndex-endIndexeg:
1
0 1 2 3 42
0 0 100 2 2 99 0 23
0 0 0 20 2 3 4 100 0 0 0 0
思路:
不能排序,排序会打乱之前的顺序
sum + for"""
# min_average_lost = int(input())
# input_list = list(map(int, input().split()))
#
# temp = [0, 0]
# left = 0
# res_list = list()
# for left in range(0, len(input_list)):
#     for right in range(left, len(input_list)):
#         sum_temp = sum(input_list[left:right+1])/(right+1-left)
#         if min_average_lost >= sum_temp:
#             temp = [left, right]
#             res_list.append(temp)
#         else:
#             break
#
#
# # print(res_list)
# # 求出最长时间段
# max_windows = 0
# res = list()
# for item in res_list:
#     max_windows = max(max_windows, item[1]-item[0])
# if len(res_list) == 0:
#     print("NULL")
# else:
#     print(" ".join("-".join(map(str, i)) for i in res_list if i[1]-i[0] == max_windows))# 优化
min_average_lost = int(input())
input_list = list(map(int, input().split()))temp = [0, 0]
left = 0
res_list = list()
max_windows = 0
for left in range(0, len(input_list)):for right in range(left, len(input_list)):sum_temp = sum(input_list[left:right+1])/(right+1-left)if min_average_lost >= sum_temp:temp = [left, right]max_windows = max(max_windows, right+1-left)res_list.append(temp)else:# 后续的都不满足条件,左窗口向前移动break# print(res_list, max_windows)
# 这里其实不是排序
res_list.sort(key=lambda x: x[0], reverse=False)
# 求出最长时间段
if len(res_list) == 0:print("NULL")
else:print(" ".join("-".join(map(str, i)) for i in res_list if i[1]-i[0]+1 == max_windows))
http://www.lryc.cn/news/304367.html

相关文章:

  • 缓存篇—缓存雪崩、缓存击穿、缓存穿透
  • Python实现视频转音频、音频转文本的最佳方法
  • 阿里云SSL免费证书到期自动申请部署程序
  • Vue全局事件防止重复点击(等待请求)【进阶版】
  • C#程序反编译经验总结
  • Android系统启动流程
  • Flask——基于python完整实现客户端和服务器后端流式请求及响应
  • crmeb多门店商城系统二次开发 增加车辆车牌搜索功能、车辆公里数
  • 深度好文|关于人类智能与自主系统
  • 防火墙内容安全笔记
  • 应用于温度报警器中的高精度温度传感芯片
  • 微信小程序swiper 视频中间大,两边小,轮播滑到中间视频自动播放组件教程
  • ARM服务器上部署zookeeper集群
  • 利用Ubuntu22.04启动U盘对电脑磁盘进行格式化
  • Nginx基础入门
  • 分布式和微服务
  • 【无标题】学习Markdown
  • 由于 vscode 版本更新为 1.86.1引起的相关问题。
  • 四、矩阵的分类
  • Windows环境下查看磁盘层级占用空间的解决方案
  • 超级实用的python代码片段汇总和详细解析(16个)
  • npm/nodejs安装、切换源
  • 【Kotlin】流程控制
  • Devc++ Easyx 实现 瓦片地图编辑数据导入游戏
  • 去年面试的运维开发面试题二
  • 【Unity编辑器扩展】Unity编辑器主题颜色设置工具
  • 精美的WordPress外贸独立站模板
  • 说一下 JVM 运行时数据区 ?
  • 外泌体相关基因肝癌临床模型预测——2-3分纯生信文章复现——02.数据格式整理(1)
  • Python 内存管理和优化之循环引用