Страницы

Поиск по вопросам

понедельник, 10 февраля 2020 г.

Непонятная битовая операция

#cpp #c #битовые_операции


Что может означать операция i = i & (i+1) в реализации дерева отрезков?
    


Ответы

Ответ 1



Превращает все завершающие единичные биты в нулевые; если таковых нет - просто возвращает исходное значение. i 0011011111 00101100100 11010101000 i+1 0011100000 00101100101 11010101001 i&(i+1) 0011000000 00101100100 11010101000 Для чего именно это сделано в конкретной программе - это уж смотрите, где и как это действие использовано...

Комментариев нет:

Отправить комментарий