【可持久化线段树】
VanishD
気付かないうちにオトナになって,绮丽な嘘 口に出来るほど。
展开
-
[bzoj1926][Sdoi2010]粟粟的书架【二分】【主席树】
[题目描述]Time Limit: 30 Sec Memory Limit: 552 MBSubmit: 1048 Solved: 412[Submit][Status][Discuss]Description幸福幼儿园 B29 班的粟粟是一个聪明机灵、乖巧可爱的小朋友,她的爱好是画画和读书,尤其喜欢 Thomas H. Cormen 的文章。粟粟家中有一个原创 2018-01-18 16:44:58 · 273 阅读 · 0 评论 -
[bzoj3744]Gty的妹子序列【分块】【主席树】
【题目链接】 http://www.lydsy.com/JudgeOnline/problem.php?id=3744 【题解】 分块套路题。 首先可以用可持久化线段树在O(logN)O(logN)O(log N)的时间内求出,一个点在一段区间内的逆序对数。 其次可以在O(T)O(T)O(T)的时间内求出两个大小为TTT的有序区间的相互的逆序对数(Two pointers...原创 2018-03-16 20:56:47 · 312 阅读 · 0 评论 -
[bzoj2653]middle【可持久化线段树】【二分】
【题目链接】 https://www.lydsy.com/JudgeOnline/problem.php?id=2653 【题解】 遇到求中位数的题,不难想到二分答案,然后把序列转化为-1和1。 考虑二分后如何判断,对于每个不同的二分的值,可以按位置为下标建立一棵线段树,每个节点记录当前是-1还是1。[b,c][b,c][b,c]必须全取。[a,b)[a,b)[a,b),(c,...原创 2018-05-29 18:49:37 · 239 阅读 · 0 评论 -
[bzoj3551][ONTAK2010]Peaks加强版【可持久化线段树】【最小生成树】
【题目链接】 https://www.lydsy.com/JudgeOnline/problem.php?id=3551 【题解】 这一题要求强制在线,所以要维护历史版本的信息。 对于每条在最小生成树上的边(u,v),将u,v跳到所在的最高父亲,然后不是直接合并,而是新建一个点,做一次可持久化线段树合并,把(u,v)的父亲设为这个点。对于每个询问,从它开始向上跳,显然向上跳的困...原创 2018-05-29 21:02:01 · 484 阅读 · 0 评论 -
[bzoj5338][loj2557][TJOI2018]xor【可持久化线段树】【dfs序】【欧拉序】
【题目链接】 https://www.lydsy.com/JudgeOnline/problem.php?id=5338 https://loj.ac/problem/2577 【题解】 可以开两棵可持久化权值线段树,一棵记dfs序维护子树信息,另一棵记欧拉序维护链信息。在开先段树的时候左边的二进制首位为000,右边为111。 对于一次询问,贪心向下选取就行了。 时...原创 2018-06-13 10:59:20 · 371 阅读 · 0 评论 -
[bzoj4504]K个串【可持久化线段树】【堆】
【题目链接】 【题解】 首先记下每个点向右所控制的区间,就是它到下一个与它相同的位置-1。 我们考虑对于每个左端点维护一棵线段树下标表示以该点为右端点的区间的答案。 那么左端点为1的区间可以O(N)O(N)O(N)暴力求出。 对于两个相邻的左端点i,i+1i,i+1i,i+1,只有iii所控制的区间会减去iii的值。用可持久化线段树+标记永久化即可。 然后将...原创 2018-06-25 21:10:30 · 392 阅读 · 0 评论