Максимальная подмассив (Kadane)

MediumАлгоритмы
05:00
Лучше работает на десктопе
Dynamic ProgrammingArrays

Дан массив целых чисел nums. Найдите непрерывный подмассив (содержащий хотя бы один элемент) с максимальной суммой.

Сигнатура

def max_subarray(nums: list[int]) -> int:

Constraints

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

Примеры

Пример 1

Вход:
nums = [-2,1,-3,4,-1,2,1,-5,4]
Выход:6

Пример 2

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

Пример 3

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