Ctrl K

Наборы без заданной разницы

Средняя
Дан массив целых положительных чисел values и число gap. Из массива выбирают несколько элементов (хотя бы один). Выбор подходит, если среди выбранных нет двух чисел, разность которых по модулю равна ровно gap. Верните количество подходящих выборов. Выборы различаются набором индексов: если в массиве два одинаковых числа, взять одно или другое — это два разных выбора.
Пример 1
values=[1, 4, 4, 7], gap=3 → 6

Подходят [1], [7], [1, 7], [4, 4] и [4] — причём двумя способами, ведь четвёрок две. Всего 6.

Пример 2
values=[2, 3, 9], gap=10 → 7

Никакие два числа не отличаются на 10, подходят все 7 непустых наборов.

Пример 3
values=[10], gap=5 → 1
Ограничения
  • 1 ≤ len(values) ≤ 18
  • 1 ≤ values[i] ≤ 1000
  • 1 ≤ gap ≤ 1000
Встречал эту задачу на настоящем собесе?
Решили0
Пробовали0
Отправок0
Принято—
Темы
Похожие задачиМеньше всего прямых через точки СредняяНаборы без заданного разрыва СредняяКрайние значения маленьких групп СредняяЦепочки с квадратными суммами СложнаяЧестный раздел цветных бусин Сложная
загружаем Python…
Вход
values=[1, 4, 4, 7], gap=3
Ожидается
6

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