异或(xor)的性质

一点性质

(1)
x xor y = z
x xor z = y

(2)
xor是一个不带进位的二进制加法.

实际例子

已知\(n\)个同学的学号,现在有一场活动,来了\(n-1\)个同学,他们每个人都把自己的学号写了下来,告诉你这\(n-1\)个同学的学号,问哪个同学没来。

考虑$(\bigoplus_{i=1}^n i )\oplus(\bigoplus_{i=1}^{n-1} a_i ). $

扩展1. 如果有\(2\)个同学没有来, 那么按照刚刚的内容有性质: 答案是二者的异或和. 这时候进一步观察异或的性质, 可以通过为1的一位, 来把数组分为2堆, 问题回到了原来的内容.

扩展2. 如果有\(n\)个: 那就分为\(n-1\)类进行解决.

posted @ 2022-11-28 22:04  Micoael_Primo  阅读(207)  评论(0)    收藏  举报