华为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.hqwc.cn/news/485660.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

大型语言模型的语义搜索(一):关键词搜索

关键词搜索(Keyword Search)是文本搜索种一种常用的技术,很多知名的应用app比如Spotify、YouTube 或 Google map等都会使用关键词搜索的算法来实现用户的搜索任务,关键词搜索是构建搜索系统最常用的方法,最常用的搜索算法是Okapi BM25&#x…

TCP/IP协议详解

文章目录 TCP/IP协议概述基于TCP/IP协议的应用工具协议协议的必要性 TCP/IP协议TCP/IP协议族协议的分层 传输方式的分类报文、帧、数据包等的区别TCP 和 UDP的区别 TCP/IP协议概述 TCP/IP(Transmission Control Protocol/Internet Protocol)是一组通信协…

使用 package.json 配置代理解决 React 项目中的跨域请求问题

使用 package.json 配置代理解决 React 项目中的跨域请求问题 当我们在开发前端应用时,经常会遇到跨域请求的问题。为了解决这个问题,我们可以通过配置代理来实现在开发环境中向后端服务器发送请求。 在 React 项目中,我们可以使用 package…

进程间传递 SQL 文的方法

SQL 文组成 SQL 文有 2 部分组成: SQL 原型,如:INSERT INTO test1 (id,name) VALUES (?,?)Args ,? 号对应的值列表 有时,生成 SQL 文的进程和处理 SQL 文的进程,可能不是同一个 这里就涉及到如何高效…

设计模式-工厂模式(Factory Pattern)

一、工厂模式说明 工厂模式是一种创建型设计模式,它提供了一种将对象的创建与使用分离的方式。工厂模式通过引入一个公共的接口来创建对象,而不是通过直接调用构造函数来创建对象。这样做的好处是使得代码更加灵活,更容易维护和扩展。 工厂模…

Cubemax创建FreeRTOS工程

目录 1.选择芯片型号,进入Pinout & Configuration 2.配置RCC的HSE为晶体/陶瓷振荡器 4.配置LED-GPIO引脚 5.配置调试串口UART1 6.配置FreeRTOS 7.配置时钟 8.工程管理配置 9.生成代码 1.选择芯片型号,进入Pinout & Configuration 2.配置…

【Python机器学习】详解Python机器学习进行时间序列预测

🔗 运行环境:Python 🚩 撰写作者:左手の明天 🥇 精选专栏:《python》 🔥 推荐专栏:《算法研究》 🔐#### 防伪水印——左手の明天 ####🔐 💗 大家…

横空出世,Bright Data 低代码数据平台,即将颠覆你的认知!

大家好,我是锋哥,最近接了个监控平台的私活项目。由于监控公开的站点太多,在我无从下手迷茫之际,竟然无意中发现了这个宝藏级低代码数据平台 - 亮数据。功能强大,性能炸裂! 传统开发 以前我们开发这种监控…