Войти Регистрация
Алгоритмы

34. Наибольшая сумма отрезка из двух значений

Средняя

Дан массив неотрицательных целых чисел arr. Верните максимальную сумму непрерывного отрезка, в котором встречается не больше двух различных значений.

Для пустого массива ответ 0.

В работе: Самая дорогая серия заказов подряд, в которой было не больше двух видов товара.

Пример 1

Ввод
arr = [3, 7, 3, 1, 1, 1, 9]
Вывод
13

3 + 7 + 3 = 13.

Пример 2

Ввод
arr = [5]
Вывод
5

Ограничения

  • 0 ≤ длина arr ≤ 10⁶
  • 0 ≤ arr[i] ≤ 10⁴
  • Лимит — 1 с на тест.
Как вызывается ваш код Читать ввод и печатать ответ не нужно: мы вызываем функцию на каждом тесте и сравниваем то, что она вернула. print() и console.log() уходят в консоль.
def max_sum_two_values(arr):
Скользящее окноДва указателяцельO(n)

Источник: отчёт о Т‑Банке, 2025. Условие пересказано своими словами.

Давали на собеседовании? Ответов пока мало — ваш поможет.