题意:求一段连续的数字使得它们的异或和最大. 思路:首先利用前缀和求sum[i],这样求某段连续数字异或和最大就是求某两个j和i满足sum[i]^sum[j-1]最大,问题就变成了找两个数的异或最大.这个问题可以利用tire树完成.首先将空串加入树,即sum[0].然后枚举i,对于sum[i]先取反,再在tire树上贪心的找可以匹配到的字符串,具体地说就是找高位尽量相同的.找到以后更新答案,再将sum[i]插入到trie树上. 注意一个问题就是trie树空间要开的足够大. #include<cs…