Ctrl K

Лучшая пара в пределах бюджета

Лёгкая
В магазине есть товары с ценами prices. Вы хотите купить ровно два разных товара так, чтобы их суммарная цена была **строго меньше** limit, и при этом потратить как можно больше. Верните наибольшую такую сумму. Если ни одна пара не укладывается в лимит, верните -1.
Пример 1
prices=[40, 15, 70, 25, 55], limit=80 → 70

Лучшая пара — 55 и 15, вместе 70. Суммы от 71 до 79 не получить ни одной парой, а 55 + 25 = 80 уже не меньше лимита.

Пример 2
prices=[30, 45], limit=60 → -1

Единственная пара стоит 75, это не меньше 60, поэтому ответ -1.

Ограничения
  • 1 ≤ len(prices) ≤ 10⁵
  • 1 ≤ prices[i] ≤ 1000
  • 1 ≤ limit ≤ 2000
Встречал эту задачу на настоящем собесе?
Решили0
Пробовали0
Отправок0
Принято—
Темы
Похожие задачиЗначения в обоих списках ЛёгкаяОбщие значения с повторами ЛёгкаяВдвое больше ЛёгкаяВдали от всех отметок ЛёгкаяПары ниже порога Лёгкая
загружаем Python…
Вход
prices=[40, 15, 70, 25, 55], limit=80
Ожидается
70

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