Ctrl K

Выбери и чередуй

Средняя
Дан массив положительных чисел values. Выберите из него непустую подпоследовательность — несколько элементов в исходном порядке, не обязательно подряд. Затем поставьте перед ними знаки по очереди: первый с плюсом, второй с минусом, третий с плюсом и так далее. Верните наибольшую сумму, которую можно так получить.
Пример 1
values=[7, 3, 8, 1, 4] → 15

Выгодно взять все числа: 7 - 3 + 8 - 1 + 4 = 15.

Пример 2
values=[2, 9, 5] → 9

Достаточно взять одно число 9. Например, [9, 5] дало бы только 4.

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

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