此题是标准的斜率优化dp,唯一不同点在于要求出次大值。
这导致在李超线段树修改中有可能同时向两侧递归,即
void upd(int u,int k=1,int l=1,int r=n)
{
pii &v=id[k];
if(p[u](mid)<p[v.mi](mid)) swap(v.mi,v.se),swap(v.mi,u);
else if(p[u](mid)<p[v.se](mid)) swap(v.se,u);
if(p[u](l)<max(p[v.mi](l),p[v.se](l))) upd(u,k<<1,l,mid);
if(p[u](r)<max(p[v.mi](r),p[v.se](r))) upd(u,k<<1|1,mid+1,r);
}
复杂度就不能按单侧递归证明
求大佬解答,thanks