SamHJD @ 2024-11-07 14:49:12
检查实现如下功能的代码,如果
int get(int a,int b,int c,int d,int x){
//[a,b] ~ [c,d] 中>=x改为1,<x改为0,最大区间和
int sum=PST::query(rt[fir[x]-1],1,n,a-1,c-1).sum;
int L=PST::query(rt[fir[x]-1],1,n,a-1,b-1).mn,R=PST::query(rt[fir[x]-1],1,n,c,d).mx;
if(a==1) L=min(L,0);
return R-L+sum;
}