题面 单点修改,区间求第k大 分析 首先,这道题卡权值线段树套treap的做法,所以只能用主席树做 对于静态的查询,root[i]对应的主席树的区间[l,r]保存的是a[1]~a[i]有多少个值落在区间[l,r]内.如果我们要修改a[i],则要修改O(n)棵主席树.那么我们像树状数组那样维护n棵主席树,不同的是每棵主席树里保存的是,a[i-lowbit(i)+1]~a[i]有多少个值落在区间[l,r]内 对于查询[ql,qr]时的做差 我们要像树状数组求和那样,把root[i],root[i-l…