LeetCode/Top Interview 150

201. Bitwise AND of Numbers Range

hyunkookim 2024. 12. 18. 19:03

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' 카테고리의 다른 글

66. Plus One  (0) 2024.12.18
9. Palindrome Number  (0) 2024.12.18
137. Single Number II  (0) 2024.12.18
67. Add Binary  (0) 2024.12.17
Graphs (싸이클탐지): 210. Course Schedule II★★★  (2) 2024.12.17