题目大意给出一个序列,求[l, r]中的最大连续xor xor和。
强制在线思路先把整个序列分成n √ \sqrt{n}块,预处理每一块的开头到每个数字的最大连续xor xor和。这个我们只需处理出前缀xor xor和,之后用可持久化Trie树就可以搞定。这样询问的右边就是整块的了。剩下左边的随便暴力一下就能过了。。CODE#define _CRT_SECURE_NO_WARNINGS#inc...
分类:
其他好文 时间:
2015-03-17 22:00:38
阅读次数:
179
DescriptionFOTILE得到了一个长为N的序列A,为了拯救地球,他希望知道某些区间内的最大的连续XOR和。即对于一个询问,你需要求出max(Ai xor Ai+1 xor Ai+2 ... xor Aj),其中l 2 #include 3 #include 4 #include ...
分类:
其他好文 时间:
2015-03-10 00:01:59
阅读次数:
370
类似p3261,只是我们需要分块预处理anss[i][j]第i块到第j块的答案,然后整块的部分直接获得,零散的部分暴力。#include#include#includeusing namespace std;#define N 12001#define MAXBIT 31#define BN 115...
分类:
其他好文 时间:
2015-03-06 15:52:38
阅读次数:
158
题意:给定一个长度为n的序列,m次询问,每次询问一个区间[l, r],求max(Ai xor Ai+1 xor Ai+2 ... xor Aj),其中lusing namespace std;typedef long long ll;const int M=8000005;struct node *...
分类:
其他好文 时间:
2015-02-01 13:28:48
阅读次数:
190
一个上午两道题,妥妥的作死。。。首先还是按照之前思路建立可持久化trie,然后发现了点问题。。。trie只能支持对于给定v求出最大xor值,也就是说我们要枚举a[i] (i ∈ [l, r]),于是单次询问复杂度O(n * 30),爆表于是想到了需要预处理,方法是分块,预处理复杂度O(n * (n ...
分类:
其他好文 时间:
2014-12-21 12:40:56
阅读次数:
332
2741: 【FOTILE模拟赛】LTime Limit: 15 SecMemory Limit: 162 MBSubmit: 1170Solved: 303[Submit][Status]DescriptionFOTILE得到了一个长为N的序列A,为了拯救地球,他希望知道某些区间内的最大的连续XO...
分类:
其他好文 时间:
2014-12-04 19:54:35
阅读次数:
246
题目大意:给定一个序列,多次询问[l,r]中最大子序异或和 强制在线
一直RE的同学注意,本题的强制在线如果直接加会爆int导致调用数组下标为负
首先我们有一个转化 维护前缀异或和数组a[] 那么[l,r]中最大子序异或和就是a数组中[l-1,r]中任取两个数的最大异或值
然后分块处理 对于每块的第一个数a[i] 我们依次处理出对于所有的j>=i的[i,j]中的最大异或值 即s[i][j]=...
分类:
其他好文 时间:
2014-10-21 10:23:24
阅读次数:
345
2741: 【FOTILE模拟赛】LTime Limit:15 SecMemory Limit:162 MBSubmit:1116Solved:292[Submit][Status]DescriptionFOTILE得到了一个长为N的序列A,为了拯救地球,他希望知道某些区间内的最大的连续XOR和。即...
分类:
其他好文 时间:
2014-10-05 02:04:27
阅读次数:
257