【华为机试真题 Python】几何平均值最大子数组

痛定思痛。 2024-02-22 09:50 73阅读 0赞

题目描述

从一个长度为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

输入

3 2
2
2
3

输出

1 2

示例2

输入

10 2
0.2
0.1
0.2
0.2
0.2
0.1
0.2
0.2
0.2
0.2

输出

2 2

参考代码

  1. import sys
  2. # 输入获取
  3. n, l = map(int, input().split())
  4. numbers = [float(input()) for i in range(n)]
  5. # 算法入口
  6. def getResult(n, l, numbe

发表评论

表情:
评论列表 (有 0 条评论,73人围观)

还没有评论,来说两句吧...

相关阅读