个人见解,有错请指出,轻喷
设 xj=dpj∗ajkj+bjkj,
yj=dpj∗ajkj+bj1,则有
dpi=max(aixj+biyj)
如果像一般的斜率优化一样令 j>k 且 由j转移过来更优,则有
aixj+biyj>aixk+biyk
移项,得 bi(yj−yk)>−ai(xj−xk)
这个时候很容易把bi移过去得到
(yj−yk)>−biai(xj−xk),因为bi是个正数
但是倘若想将(xj−xk)移项过来该怎么办呢?似乎无法直接确定它是正数或是负数。因此所维护的线性表里要按照xj升序排列 ,而不是直接在队列尾部插入元素使得队列中下标单调
是这样吧?