随笔分类 -  数据结构 -- 主席树

摘要:C Continuous City(图的构造) 题目大意:让你构造一个n\le 32的有向无环无重边图,使得从1走到n的所有路径长度在L,R之间,且每种长度的路径只有唯一一条,$L,R\le 1e6$ 构造图的妙妙题目 先考虑$[1,2^{k}]$的情况 利用归纳法构图 假设已经构造完$[1,2^{ 阅读全文
posted @ 2021-02-16 21:58 guapisolo 阅读(51) 评论(0) 推荐(0)
摘要:题目传送门 先建出来点分树,以每个点为根开线段树,维护点分子树内编号为$[l,r]$的儿子到根的距离最小值 每次查询$x$开始,沿着点分树向上跑,在每个点的线段树的$[l,r]$区间里都查一遍取$min$即可 因为题目让我们求最小值,所以出现重复经过同一条路径的情况并不会让答案变坏 如果让我们求最大 阅读全文
posted @ 2019-03-26 23:12 guapisolo 阅读(296) 评论(0) 推荐(0)
摘要:题面传送门 题目大意:给你一个序列,多次询问,每次取出一段连续的子序列$[l,r]$,询问这段子序列的逆序对个数,强制在线 很熟悉的分块套路啊,和很多可持久化01Trie的题目类似,用分块预处理出贡献,而这道题是用可持久化线段树罢了 首先对序列分块,设块大小为$S$ 再建出主席树,我们就能在$O(l 阅读全文
posted @ 2019-03-26 21:10 guapisolo 阅读(223) 评论(0) 推荐(0)
该文被密码保护。
posted @ 2019-03-13 07:45 guapisolo 阅读(9) 评论(0) 推荐(0)
摘要:题面:BZOJ传送门 洛谷传送门 让你求前$K$大的子序列和,$n\leq 5*10^{5}$ 只想到了个$nlog^{2}n$的做法,似乎要被卡常就看题解了.. 好神奇的操作啊,我傻了 我们把序列和拆成两个前缀和相减 对于一个左端点$x$,它可以取的范围是$[x+l,x+r]$,查出该范围内的第1 阅读全文
posted @ 2019-02-25 23:53 guapisolo 阅读(218) 评论(2) 推荐(1)
摘要:题面 想了一个主席树做法 我们把每个区间的两个端点拆开 对$L,R$分别从小到大排序,分别从左到右依次把对应标号的$c_{i}$插入到权值主席树里 每次查询$p_{i}$,在排序后的$L,R$数组上分别二分找到第一个小于等于$p_{i}$的位置 那么$L,R$的主席树相减之后就是能对$p_{i}$产 阅读全文
posted @ 2019-02-09 14:54 guapisolo 阅读(232) 评论(0) 推荐(0)
摘要:题目大意:有n个任务,有起始时间si和结束时间ei,以及该任务重要度pi,求某时刻xi正在进行的任务中,重要度前ki小任务的重要度之和 本以为是一道主席树的水题,可我调了半个多小时才调出来,原来是我新建的主席树根的左右儿子并没继承上个版本,导致某些时刻并没有任何刚开始或刚结束的任务,而在这个时间却找 阅读全文
posted @ 2018-09-24 22:29 guapisolo 阅读(151) 评论(0) 推荐(0)
摘要:题目大意:给你一个序列,求某个区间出现次数大于一半的数是什么 主席树裸题,刷刷水题提升自信= = 阅读全文
posted @ 2018-09-24 22:28 guapisolo 阅读(116) 评论(0) 推荐(0)
摘要:题目大意:给你一个序列,求出指定区间的(l<=i<=r) mod 1000777 的值 还复习了欧拉函数以及线性筛逆元 考虑欧拉函数的的性质,(l<=i<=r),等价于 (p[j]是区间内所有出现过的质数) 那么考虑找出区间内所有出现过的质数,这思路和HH的项链是不是很像?? 由于此题强制在线,所以 阅读全文
posted @ 2018-09-24 22:26 guapisolo 阅读(238) 评论(0) 推荐(0)