警示后人 10 pts
查看原帖
警示后人 10 pts
903671
Tyih楼主2025/8/31 16:13

查询最大值时要将 ansans 赋为极小值。

ll query2(int p,int l,int r){
	if(l<=l(p) && r(p)<=r) return mx(p);
	down(p);
	int mid=(l(p)+r(p))>>1;
	ll ans=-INF;//!!!
	if(l<=mid) ans=max(ans,query2(p<<1,l,r));
	if(mid<r) ans=max(ans,query2(p<<1|1,l,r));
	return ans;	
}
2025/8/31 16:13
加载中...