Задача: Максимальное среднее подмассива

Задача: Максимальное среднее подмассива

https://t.me/pythonl

Условие: дается целочисленный массив nums, состоящий из n элементов и целого числа k.

Найдите непрерывный подмассив, длина которого равна k, который имеет максимальное среднее значение, и верните это значение. Будет принят любой ответ с ошибкой вычисления менее 10-5.

Пример:

Ввод: nums = [1,12,-5,-6,50,3], k = 4

Вывод: 12.75000

Объяснение:

Ввод: nums = [5], k = 1

Вывод: 5.00000

Решение :

Python

В этом решении проверка выполняется на месте, и в нем нет странного финального цикла для решения особых случаев.

def merge(self, nums1: List[int], m: int, nums2: List[int], n: int) -> None:
 a, b, write_index = m-1, n-1, m + n - 1

 while b >= 0:
  if a >= 0 and nums1[a] > nums2[b]:
   nums1[write_index] = nums1[a]
   a -= 1
  else:
   nums1[write_index] = nums2[b]
   b -= 1

  write_index -= 1




Report Page