1. 程式人生 > >leetcode 201.Bitwise AND of Numbers Range

leetcode 201.Bitwise AND of Numbers Range

n) 一個 while code class color lee 右移 number

要求求出在一個序列中的所有數字的二進制的和,那麽會發現左邊相與相等即可的,則可以利用最大值的不斷右移來實現的。

class Solution {
public:
    int rangeBitwiseAnd(int m, int n) {
        int t=INT_MAX;
        while((m&t)!=(n&t)){
            t<<=1;
        }
        return m&t;
    }
};

leetcode 201.Bitwise AND of Numbers Range