用于多个数构成的集合,取任意个异或起来,的相关问题。
实际上,线性基可以视作一个集合,使得原集所有可以得到的数都可以由新集异或得到,且新集所有异或得到的数都可以由原集异或得到,以及满足新集所有数二进制最高位不同。
具体构造过程如下:假如现在插入一数x。 从最高位向最低位枚举,若x在该位为0则跳过。 反之,若该位无对应数,令该位对应数为x。 若有,则令x异或上对应数。
异或上对应数的操作可以使得x一定可以被新集对应数异或得出,自然满足原集所有对应数都可以被新集异或得出。