Я реализую программу на Java, используя наборы битов, и я застрял в следующей операции:
Данные N наборов битов возвращают битовый набор с 0, если во всех битовых наборах их более 1, и 1 в противном случае
As Например, предположим, что у нас есть эти 3 набора:
00111
11100 ожидаемый результат
Для следующих наборов:
00101
01000 ожидаемый результат
Я пытаюсь сделать это эксклюзивным с побитовыми операциями, и я понял, что мне нужно буквально эксклюзивное или между всеми наборами, но не итеративно, так что я совсем в тупике, что делать. Это вообще возможно?
Я хотел избежать дорогостоящего решения, заключающегося в проверке каждого бита в каждом наборе и ведении счетчика для каждой позиции...
Спасибо за любую помощь
Отредактируйте :, как просили некоторые люди, это является частью проекта, над которым я работаю. Я создаю генератор расписания, и в основном одно из мягких ограничений заключается в том, что ни у одного ученика не должно быть только 1 занятия в 1 день, поэтому эти наборы представляют посещающих учеников каждый час, и я хочу отфильтровать тех, у кого есть только 1 занятие.