【华为OD机试真题 python】几何平均值最大子数组【2023 Q1 | 100分】

这是一道华为在线测评(OD)的编程题目,要求从一个正数数组中找到长度至少为L且几何平均值最大的子数组。如果有多个子数组几何平均值相同,则选择长度最短的,若长度还相同,则选择靠前的。题目提供了输入输出示例及Python解题代码。
摘要由CSDN通过智能技术生成

题目描述

【几何平均值最大子数组】

从一个长度为N的正数数组numbers中找出长度至少为L且几何平均值最大子数组,并输出其位置和大小。(K个数的几何平均值为K个数的乘积的K次方根)

若有多个子数组的几何平均值均为最大值,则输出长度最小的子数组。

若有多个长度相同的子数组的几何平均值均为最大值,则输出最前面的子数组。


输入描述

第一行输入为N、L,N表示numbers的大小(1 <= N <= 100000),L表示子数组的最小长度(1 <= L <= N),
之后N行表示numbers中的N个数,每个一行(10^-9 <= numbers[i] <= 10^9)。

输出描述

输出子数组的位置(从0开始计数)和大小,中间用一个空格隔开。

示例1 输入输出示例仅供调试,后台判题数据一般不包含示例

输入

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

无痕de泪

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值