Ctrl K

Удвоения ради наибольшего OR

Средняя
Дан массив положительных чисел values и число doublings. За одну операцию можно выбрать любой элемент и умножить его на 2; всего операций не больше doublings. Верните наибольшее возможное значение побитового OR всех элементов массива после операций.
Пример 1
values=[5, 3], doublings=1 → 11

Удваиваем 5: получаем 10 | 3 = 11. Удвоить 3 хуже: 5 | 6 = 7.

Пример 2
values=[1, 4, 2], doublings=3 → 35

Все три удвоения отдаём числу 4: 32 | 1 | 2 = 35.

Ограничения
  • 1 ≤ len(values) ≤ 10⁵
  • 1 ≤ values[i] ≤ 10⁹
  • 1 ≤ doublings ≤ 15
Встречал эту задачу на настоящем собесе?
Решили0
Пробовали0
Отправок0
Принято—
Темы
Похожие задачиСтудии для записи СредняяМаксимум двоичных строк после переворотов СредняяПалиндром после пары правок СредняяXOR на отрезках СредняяКомпании по четыре в кинозале Средняя
загружаем Python…
Вход
values=[5, 3], doublings=1
Ожидается
11

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