ccz181078

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: :: 管理 ::
上一页 1 ··· 3 4 5 6 7 8 9 10 11 ··· 43 下一页

2017年8月23日

摘要: 维护每个位置x的上一个相等的位置pv[x],可以把询问表示成l<=x<=r,pv[x]<l的形式,对一次修改,均摊改变O(1)个pv的取值,因此可以用平衡树预处理出pv的变化,用cdq分治处理查询。 阅读全文
posted @ 2017-08-23 08:33 nul 阅读(934) 评论(0) 推荐(0) 编辑

摘要: 用dfs序把询问表示成询问dfs序的两个区间中的信息 拆成至多9个询问(询问dfs序的两个前缀),对这些询问用莫队处理,时间复杂度$O(n\sqrt{m})$ 阅读全文
posted @ 2017-08-23 08:28 nul 阅读(287) 评论(0) 推荐(0) 编辑

摘要: 将权值排序,设权值x排序后在[l,r]出现,x在区间中出现k次,则用[l,l+k-1]为1,[l+k,r]为0来表示x的出现次数 用bitset表示可重集中每个元素的出现次数,用莫队处理出询问区间对应的bitset,通过取and后求1的个数得到答案 阅读全文
posted @ 2017-08-23 08:21 nul 阅读(606) 评论(0) 推荐(0) 编辑

摘要: 用dfs序转为区间加,区间第k大 分块,块内维护排序后的权值,并记录每个权值原来在块中的位置。加法操作对于整块可以打标记,零散部分因为记了每个值排序前的位置,可以直接提取出块中待修改的部分,修改后用归并排序线性重构这个块,对于查询,先把零散部分提取出来,当作普通的块处理,然后二分答案,在每个块上再二 阅读全文
posted @ 2017-08-23 08:15 nul 阅读(555) 评论(0) 推荐(0) 编辑

摘要: 设第i个字母的权值为1<<i,则一个可重集合可以重排为回文串,当且仅当这个集合的异或和x满足x==x&-x,用莫队维护区间内有多少对异或前缀和,异或后满足x==x&-x,这样端点移动的代价为字符集大小+1=27,因此时间复杂度为$O(27n\sqrt{m})$ 阅读全文
posted @ 2017-08-23 08:05 nul 阅读(237) 评论(0) 推荐(0) 编辑

摘要: 在线询问区间众数,传统的分块(记录块间众数和每个权值的出现次数)做法被卡空间(分块用的空间是O(块数*(块数+权值种类数))),因此考虑去掉出现次数较小的数,只用分块维护出现次数较大的数。设K为分界线,用原来的分块维护原序列中出现次数>K的数组成的部分,而出现次数<=K的数,可以通过记录一个数前面第 阅读全文
posted @ 2017-08-23 07:58 nul 阅读(345) 评论(0) 推荐(0) 编辑

摘要: 由于查询的是树链的并的信息,同时信息不能高效合并,只能考虑用bitset维护,小范围暴力预处理以便从bitset算出答案 对树分块,保证每块是连通的且直径较小,对分出的块缩点建新树,在新树上建树上ST表,用bitset保存信息,于是每条链只需用4个bitset合并,再暴力加上零散部分 考虑到bits 阅读全文
posted @ 2017-08-23 07:46 nul 阅读(309) 评论(0) 推荐(0) 编辑

摘要: 树链剖分,用zkw线段树维护每条链两个方向上对每一位的变换情况,由于位数较少,可以用两个unsigned long long表示 阅读全文
posted @ 2017-08-23 07:34 nul 阅读(241) 评论(0) 推荐(0) 编辑

摘要: 用莫队求出每个询问区间对应的bitset(表示每个权值是否出现过),对于加减可以用bitset移位后取and判断,对于乘法可以直接枚举约数 阅读全文
posted @ 2017-08-23 07:29 nul 阅读(167) 评论(0) 推荐(0) 编辑

2017年8月22日

摘要: Description Mr.董已经成长为一个地区的领袖,真是妙啊。董所在的地区由n个小区域构成,这些小区域构成了一棵树,每个小 区域都有一个重要程度,一个连通块的重要程度为其包含的小区域重要程度之和。现在董想进行一些调查,由于1 号区域是领袖重地,他问你包含1号的重要程度前k小的连通块重要程度分别 阅读全文
posted @ 2017-08-22 10:18 nul 阅读(286) 评论(0) 推荐(0) 编辑

上一页 1 ··· 3 4 5 6 7 8 9 10 11 ··· 43 下一页