rt,这篇题解中的线段树代码是WA的,WA了两个点,导致我调了好长时间也AC不了。这篇题解原来还是排在第一篇的,被我踩了以后到了第二篇;第一篇题解就有误的情况我还是第一次遇到,你说这好吗?这不好。
然而,在指责错误的同时,怀着追求真理的态度,我们还是得找到这篇题解的错误之处,
for(register lo i=1;i<=n;i++) {
x=n-a[i]+1;
if(x>0) num[a[i]]+=ask(1,x,1,n,1);
change(x+1,1,n,1);
}
这里47、48行有误,应该改为:
for(register lo i=1;i<=n;i++) {
x=n-a[i]+1;
if(x>0) num[a[i]]+=ask(1,x,1,n+1,1);
change(x+1,1,n+1,1);
}
这里 n 也要加一。