bzoj 2741 【FOTILE模拟赛】L 分块 可持久化trie树
先处理一个前缀异或和,这样就从查询一段异或和最大的区间变成查询两个异或和最大的点。
然后处理一个可持久化trie,分块。
用可持久化trie预处理块内异或值最大的两个数,两块间异或值最大的两个数。
然后查询区间时对于整块的用块内和块间的最大值更新答案,对于其他的用可持久化trie求一下最大值。
设块大小为S,那么时间复杂度是这玩意:
O(n2Slog+M(n2S2+Slog))O(\fra
原创
2016-10-21 11:26:16 ·
243 阅读 ·
0 评论