Ctrl K

Больше положительных накопленных сумм

Средняя
Дан массив целых чисел values. Числа можно переставить в любом порядке (в том числе оставить как есть). Затем идём по массиву слева направо и после каждого числа записываем накопленную сумму — сумму всех чисел от начала до текущего включительно. Верните наибольшее количество строго положительных накопленных сумм, которого можно добиться перестановкой.
Пример 1
values=[-4, 3, 0, 2, -2] → 4

Порядок [3, 2, 0, -2, -4] даёт суммы 3, 5, 5, 3, -1 — положительных четыре. Больше не выйдет: сумма всех чисел отрицательна, так что последняя сумма всегда ≤ 0.

Пример 2
values=[0, -1] → 0

Положительных чисел нет, поэтому ни одна сумма не будет больше нуля.

Пример 3
values=[5, -5, 1] → 3
Ограничения
  • 1 ≤ len(values) ≤ 10⁵
  • -10⁶ ≤ values[i] ≤ 10⁶
Встречал эту задачу на настоящем собесе?
Решили0
Пробовали0
Отправок0
Принято—
Темы
Похожие задачиСтудии для записи СредняяРасстановка под популярные отрезки СредняяПодравнять числа прибавлением СредняяВыровнять банки СредняяКовёр на окрашенные отрезки Средняя
загружаем Python…
Вход
values=[-4, 3, 0, 2, -2]
Ожидается
4

«Запустить» — первые 3 теста у тебя в браузере, «Отправить» — все 104 теста на сервере, включая скрытые.