values. Найдите сумму элементов всех ступенчатых отрезков (непрерывных подмассивов), сложенную вместе. Ответ может быть большим — верните его по модулю 10⁹ + 7.
Перебор всех отрезков слишком медленный — нужно O(n).values=[4, 5, 6] → 50
Подходят [4], [5], [6], [4, 5], [5, 6], [4, 5, 6]. Суммы: 4 + 5 + 6 + 9 + 11 + 15 = 50.
values=[3, 2, 2, 3] → 20
Кроме одиночных элементов (сумма 10) подходят [3, 2] (шаг −1) и [2, 3] (шаг +1): 10 + 5 + 5 = 20. Кусок [2, 2] не подходит — шаг 0.
values=[10, 30] → 40
Подходят только одиночные элементы: 10 + 30 = 40.
values=[4, 5, 6]
50
«Запустить» — первые 3 теста у тебя в браузере, «Отправить» — все 124 теста на сервере, включая скрытые.