← К задачам
Максимальная сумма окна длины k
Дан список целых чисел arr и натуральное число k.
Реализуйте функцию max_window_sum(arr, k), которая возвращает максимальную сумму среди всех подряд идущих подотрезков (окон) длины ровно k. Если k больше длины списка, k <= 0 или список пуст так, что окно не помещается — верните None. Используйте скользящее окно за O(n).
Формат входа: arr — список чисел, k — длина окна.
Формат выхода: число (максимальная сумма окна) или None.
Примеры:
max_window_sum([1, 2, 3, 4, 5], 2) -> 9 # окно [4, 5]
max_window_sum([5, -2, 7, -8, 4, 6], 3) -> 10
max_window_sum([1, 2, 3], 5) -> None
def max_window_sum(arr, k):
# ваш код
pass
Для запуска тестов необходима авторизация.