小总结:
(静态全局第k小排个序就没了)
(单点修改+全局第k小平衡树就没了 或者离散化+权值线段树(详见暗黑破坏神))
(静态区间第k小一般的主席树或者分块,分块比主席树慢)
(区间修改+区间第K小。主席树+线段树套树状数组 或者 分块块内二分)
luogup3834
静态区间第k小
对于每个前缀建立权值线段树。每增加一个节点,只会修改一条链。采用引用的形式自上而下修改。
luoguP2468
技巧:二分一个下限,只选择大于等于下限的数。看是否满足限制。
可以在权值线段树上二分。
x1,x2好像是math库里面的关键字。所以如果开了Bits/stdc++.h,又定义了x1,x2的话。在bzoj上会CE。
luoguP3293
很妙的题
主席树可以支持静态区间内权值处于一个区间的数的数量。主席树节点记录一个siz,表示权值在这个区间里的数目。加一加就好了。
也考虑了逐位确定。一位一位确定。每一位尽量和b的位不相等。