萌新没写过,自己想了个区间查询第一个最大值的位置,但输出来一堆 -1,求教/kel
ll maxn;
ll query(ll now,ll l,ll r,ll x,ll y){
if(l>=x&&r<=y){
if(t[now].mx!=maxn) return -1;
if(l==r) return l;
}
pushdown(now);
ll mid=(l+r)>>1;
if(x<=mid){
ll p=query(ls,l,mid,x,y);
if(p!=-1) return p;
}
if(y>mid) return query(rs,mid+1,r,x,y);
return -1;
}