Ctrl K

Пары с наименьшим XOR

Сложная
Даны два массива left и right одинаковой длины n. Нужно разбить их элементы на n пар так, чтобы в каждой паре был ровно один элемент из left и ровно один из right. Стоимость пары — побитовое исключающее ИЛИ (XOR) её чисел, стоимость разбиения — сумма стоимостей всех пар. Верните наименьшую возможную стоимость разбиения.
Пример 1
left=[5, 8], right=[9, 4] → 2

Пары 5↔4 и 8↔9 дают 1 + 1 = 2; пары 5↔9 и 8↔4 дали бы 12 + 12 = 24.

Пример 2
left=[7, 0, 3], right=[3, 6, 1] → 2

Лучший вариант: 7↔6, 0↔1, 3↔3, итого 1 + 1 + 0 = 2.

Пример 3
left=[12], right=[12] → 0
Ограничения
  • 1 ≤ n ≤ 14
  • len(left) = len(right) = n
  • 0 ≤ left[i], right[i] ≤ 10⁷
Встречал эту задачу на настоящем собесе?
Решили0
Пробовали0
Отправок0
Принято—
Темы
Похожие задачиКак рассчитаться за меньше переводов СложнаяДве группы с одинаковым средним СложнаяСклейка фрагментов СложнаяЦепочки с квадратными суммами СложнаяСамая маленькая команда со всеми навыками Сложная
загружаем Python…
Вход
left=[5, 8], right=[9, 4]
Ожидается
2

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