Ctrl K

Самая большая группа с общим битом

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

В двоичном виде: 101, 110, 1100, 11. Бит со значением 4 есть у 5, 6 и 12: 5 & 6 & 12 = 4 > 0. Группы из всех четырёх нет: 5 & 6 & 12 & 3 = 0.

Пример 2
numbers=[9, 9, 9] → 3

Повторы — разные элементы; 9 & 9 & 9 = 9, берём все три.

Пример 3
numbers=[1, 2, 4] → 1

Общих единичных битов ни у какой пары нет, поэтому группа — одно число.

Ограничения
  • 1 ≤ len(numbers) ≤ 10⁵
  • 1 ≤ numbers[i] < 2³¹
Встречал эту задачу на настоящем собесе?
Решили0
Пробовали0
Отправок0
Принято—
Темы
Похожие задачиСлова с рабочих клавиш ЛёгкаяНоски по парам ЛёгкаяПары с одинаковым набором букв ЛёгкаяБольше трети голосов СредняяСамые частые значения Средняя
загружаем Python…
Вход
numbers=[5, 6, 12, 3]
Ожидается
3

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