主要改了这几个地方把常数降下来了
1.在执行操作2时,可以预先把所有用到的平衡树结点存到一个数组中,这样二分判断的时候不用再回到线段树中找。此外,如果排名已经超过了k,可以提前break。
2.平衡树中不要插入哨兵(-inf和inf)。
3.预先再开一个线段树用来RMQ,用于二分上下界的初始化。 最后,O2大法好!