#刷题交流# 第11天:查找按位XOR等于2的整数对问题
解题思路
1. 按位XOR的性质:
a ^ b = 2 意味着 a 和 b 在二进制表示中只有一个位不同,且该位是第1位(从右往左数)。例如,4 和 6 的二进制表示分别是 100 和 110,它们的按位XOR结果是 10,即 2。
2. 检查范围内的整数对:
○ 对于任意整数 x,如果 x + 2 也在 [L, R] 范围内,那么 (x, x + 2) 就是一对满足条件的整数对。
○ 同样,如果 x - 2 也在 [L, R] 范围内,那么 (x, x - 2) 也是一对满足条件的整数对。
3. 边界条件:
○ 需要确保 x + 2 和 x - 2 都在 [L, R] 范围内。


核心代码:
for x in range(L, R + 1):
if (x + 2 <= R and (x ^ (x + 2) == 2)) or (x - 2 >= L and (x ^ (x - 2) == 2)):
return 1
return 0

第11天了,第11天了,加油啊~~
展开
1