Я решил эту задачу, используя бинпоиск по ответу. Для проверки я отнимал значение от всех элементов и проверял, что сумма массива без подотрезка с максимальной суммой не больше нуля. Потом я придумал другой подход: переберем длину убираемого отрезка, найдем в массиве подотрезок этой длины с максимальной суммой, обновим ответ. Как можно эффективно для каждой длины от 1 до n найти подотрезок массива такой длины с максимальной суммой?