用树状数组代替平衡树
Posted hailjedi
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了用树状数组代替平衡树相关的知识,希望对你有一定的参考价值。
那天我在做 USACO 的某道题的时候突发奇想用树状数组代替平衡树
(但是这似乎不是我首创的 idea)
(不过貌似用的人很少)
大体做法就是靠二分+树状数组,单次操作复杂度 ( O( log^2 n ) )
虽然复杂度比 Treap 高了一点,但是代码短呀!
(但是我不打算贴代码了 QWQ 因为我懒)
对于不超过 ( 10^5 ) 的长度还是很轻松的
时间宽松的话 ( 5 imes 10^5 ) 也好说
实际上对于 ( 10^6 ) 也可以玄学一点
(不过强烈不建议在正规考试中使用如此骚的操作,除非时限够用)
(但是遇到 CF 评测姬还是可以尝试一下)
以上是关于用树状数组代替平衡树的主要内容,如果未能解决你的问题,请参考以下文章
BZOJ3173: [Tjoi2013]最长上升子序列(树状数组)
(树状数组+离线查询)HDU 4417 - Super Mario
zoj2112 Dynamic Rankings 动态区间第k大,树状数组套平衡树