roger_yrj @ 2023-05-12 21:09:06
如果你翻转区间时是这么分裂的:
split(root,l-1,dl,dr);
split(dr,r,dx,dr);
应改为:
split(root,r,dl,dr);
split(dl,l-1,dl,dx);
原因是先分前面时,后面的排名会发生变化,所以会出错。
by 我是人999 @ 2023-05-12 21:13:05
对不起,刚才没看到,打扰了
by Rain_javalearner @ 2023-08-21 09:55:55
@roger_yrj 卷王
by kintsgi @ 2023-09-11 19:30:36
感谢!
by kintsgi @ 2023-09-11 19:38:00
上面代码还有一种改法:
split(root,l-1,dl,dr);
split(dr,r-l+1,dx,dr);
by 蒟蒻中的zzh @ 2023-10-25 13:37:03
感谢!