leetcode 日经贴,Cpp code -Bitwise AND of Numbers Range
2015-04-16 10:32
375 查看
Bitwise AND of Numbers Range
class Solution { public: int rangeBitwiseAnd(int m, int n) { long long a = max(m, n); long long b = min(m, n); if (b == 0) { return 0; } int ans = 0; long long ha = 1, hb = 1; while (ha <= a) { ha <<= 1; } ha >>= 1; while (hb <= b) { hb <<= 1; } hb >>= 1; if (ha != hb) return 0; while (ha) { if (ha & (a ^ b)) { break; } else if (ha & a) { ans |= ha; } ha >>= 1; } return ans; } };
相关文章推荐
- Leetcode-201- Bitwise AND of Numbers Range
- Leetcode167: Bitwise AND of Numbers Range
- leetcode_201题——Bitwise AND of Numbers Range(位操作)
- LeetCode 201 Bitwise AND of Numbers Range
- [LeetCode] Bitwise AND of Numbers Range 数字范围位相与
- Leetcode201-Bitwise AND of Numbers Range
- LeetCode-Bitwise AND of Numbers Range
- leetcode-201 Bitwise AND of Numbers Range
- 《leetCode》:Bitwise AND of Numbers Range
- 【LeetCode 201】Bitwise AND of Numbers Range
- LeetCode[Bitwise]----Bitwise AND of Numbers Range
- LeetCode Bitwise AND of Numbers Range
- [leetcode][201]. Bitwise AND of Numbers Range
- LeetCode 201 Bitwise AND of Numbers Range (位运算)
- Leetcode 201 Bitwise AND of Numbers Range 区间内整数按位与
- 【leetcode】Bitwise AND of Numbers Range
- LeetCode(201) Bitwise AND of Numbers Range
- 【leetcode】Bitwise AND of Numbers Range(middle)
- LeetCode Bitwise AND of Numbers Range
- [Leetcode]Bitwise AND of Numbers Range