题意:
给你一个序列,q个询问l,r
要求出l到r区间内出现偶数次的数的异或值
思路:
预处理异或前缀sum
将询问按r放入vector,存的pair<l,i>
树状数组部分有点同于求区间数的种数。
last记录每个数前一次出现的位置。
走到i时,如果a[i]出现过,那么把他上次出现的位置异或掉,再在i位置上异或上a[i]。
然后对所有以i结尾的讯问区间进行操作,这里就是异或计算了。
/* ***********************************************Author :devil************************************************ */#include #include #include #include #include #include #include #include #include