题解: 官方题解太简略了orz 具体实现的方式其实有很多 问题就在于确定A[j]以后,如何找符合条件的A[i] 这里其实就是要提前预处理好 我是倒序插入点的,所以要沿着A[k]爬树,找符合的A[i] 如果发现A[i]与A[k]的第p位不同,比如A[k]位1,A[i]为0,那么所有的在i右边的第p位为0的数就都可以充当A[j] 所以实际上就需要求出有多少点对(i, j),满足这个条件. 不妨用可持久化的思想考虑这个过程 倒序插入A[i]时,我们就能统计出来A[i]的第p位为0(或者为1)时,所有在…