Медиана потока данных

HardAlgo
10:00
Лучше работает на десктопе
HeapDesignTwo Heaps

Дан массив целых чисел nums. Элементы поступают один за другим (поток данных). После добавления каждого элемента вычислите медиану всех добавленных элементов.

Верните список медиан после каждого добавления. Если количество чисел чётное, медиана — среднее двух центральных (как float).

Сигнатура

def running_median(nums: list[int]) -> list[float]:

Примеры

running_median([2, 3, 4]) → [2.0, 2.5, 3.0]
running_median([1]) → [1.0]
running_median([5, 2, 8]) → [5.0, 3.5, 5.0]

Constraints

- 1 ≤ len(nums) ≤ 5 × 10⁴
- -10⁵ ≤ nums[i] ≤ 10⁵

Примеры

Пример 1

Вход:
nums = [2,3,4]
Выход:[2,2.5,3]

Пример 2

Вход:
nums = [1]
Выход:[1]

Пример 3

Вход:
nums = [5,2,8]
Выход:[5,3.5,5]
Консоль
Нажмите Run или Ctrl+Enter для запуска