随笔分类 -  数据结构——权值线段树

摘要:考虑我们需要维护的是这样一个东西。 即可能变化的只有每一行前$m - 1$个,和最后一列。 我们考虑对每一行开一个权值线段树,记录原本序列的第$x$个是否被一出,且用一个$vector$记录多出的部分。 那么很好维护的。 考虑内存的问题,我们用动态开点就行了。 #include<iostream> 阅读全文
posted @ 2021-08-03 21:21 fhq_treap 阅读(93) 评论(0) 推荐(0)
摘要:本来想用这个题来写一下整体二分。 不过看了很久的树套树神奇数据结构貌似还从来没写过。 来练下手好了。 考虑我们没有修改操作时,区间$kth$可以用主席树来做,相当于维护了一个前缀和(这个前缀和的形式是由权值线段树来表达的)。 但是我们有修改操作了,如果我们继续维护这个暴力的前缀和,那么每次修改是$O 阅读全文
posted @ 2021-05-17 12:07 fhq_treap 阅读(96) 评论(0) 推荐(0)
摘要:权值线段树合并裸题。 [HNOI2012]永无乡 #include<iostream> #include<cstdio> #define ll long long #define N 100005 ll head[N]; ll n,m; ll v[N << 5],ls[N << 5],rs[N << 阅读全文
posted @ 2021-04-18 14:13 fhq_treap 阅读(76) 评论(0) 推荐(0)