changes: changes[i] — прибыль за i-й день, убыток записан отрицательным числом.
Найдите непрерывную серию подряд идущих дней (хотя бы из одного дня) с наибольшей суммарной прибылью и верните эту сумму.
Решение за O(n²) очевидно — попробуйте за один проход.changes=[3, -5, 4, -1, 6, -8, 2] → 9
Лучшая серия — дни с индексами от 2 до 4: 4 − 1 + 6 = 9.
changes=[-4, -2, -7] → -2
Все дни убыточные; отрезок обязан быть непустым, поэтому выбираем один день с наименьшим убытком: −2.
changes=[6, -1, 2] → 7
Выгоднее взять все три дня: 6 − 1 + 2 = 7.
changes=[3, -5, 4, -1, 6, -8, 2]
9
«Запустить» — первые 3 теста у тебя в браузере, «Отправить» — все 101 тест на сервере, включая скрытые.