Ctrl K

Убрать пары с заданной суммой

Средняя
Дан массив натуральных чисел values и число target. За один ход можно выбрать два элемента массива (разные позиции), сумма которых равна target, и удалить оба. Верните наибольшее число ходов, которое можно сделать.
Пример 1
values=[2, 7, 4, 5, 3, 6], target=9 → 3

Убираем 2 и 7, затем 4 и 5, затем 3 и 6 — три хода, массив пуст.

Пример 2
values=[4, 4, 4, 1], target=8 → 1

Пару дают две четвёрки; третья четвёрка остаётся без пары, а 1 ни с чем не складывается в 8.

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

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