201. Bitwise AND of Numbers Range
https://youtu.be/R3T0olAhUq0?si=6t0KsTT_qkbTvmwG
class Solution:
def rangeBitwiseAnd(self, left: int, right: int) -> int:
res = 0
for i in range(32):
bit = (left >> i) & 1
if not bit:
continue
remain = left % (1 << (i+1))
diff = (1 << (i+1)) - remain
if right - left < diff:
res = res | (1<<i)
return res
'LeetCode > Top Interview 150' 카테고리의 다른 글
172. Factorial Trailing Zeroes (2) | 2024.12.18 |
---|---|
66. Plus One (1) | 2024.12.18 |
137. Single Number II (0) | 2024.12.18 |
67. Add Binary (0) | 2024.12.17 |
530. Minimum Absolute Difference in BST (0) | 2024.12.15 |