【python/leetcode/M】Bitwise AND of Numbers Range

版权声明:小明酱私有,私自转载要捶你小胸口哦~ https://blog.csdn.net/alicelmx/article/details/83385401

题目

Given a range [m, n] where 0 <= m <= n <= 2147483647, return the bitwise AND of all numbers in this range, inclusive.
Example 1:
Input: [5,7]
Output: 4
Example 2:
Input: [0,1]
Output: 0

思路

参考这个:http://www.cnblogs.com/grandyang/p/4431646.html

实现代码

class Solution(object):
    def rangeBitwiseAnd(self, m, n):
        """
        :type m: int
        :type n: int
        :rtype: int
        """
        i = 0
        while m != n:
            m = m >> 1
            n = n >> 1
            i += 1
        return m << i

猜你喜欢

转载自blog.csdn.net/alicelmx/article/details/83385401
今日推荐