假设有数组[1,2,3,4,5],这里的1,2,3,4,5不代表数组中的值,表示索引。下同。 如果[2,3]处的值可以异或成t,那么区间有[1,2,3],[1,2,3,4],[1,2,3,4,5],[2,3],[2,3,4],[2,3,4,5]这6个区间。我们将这个6个区间以左端点和右端点组成一对xy坐标放到二维坐标上。 如下第一张图 如果还有其他的点可以异或成t,假设[3,4]。由[3,4]可得的区间有[1,2,3,4],[2,3,4],[3,4],[3,4,5],同样可以处理到坐标轴上。如第二张图。 我们只要计算最后没有被覆盖到的面积。即可。
QQ图片20210814000710.jpgQQ图片20210814001124.jpg