1. 程式人生 > >四邊形不等式優化dp-簡介

四邊形不等式優化dp-簡介

最有代價用d[i,j]表示 
d[i,j]=min{d[i,k-1]+d[k+1,j]}+w[i,j] 
其中w[i,j]=sum[i,j] 
四邊形不等式   
     w[a,c]+w[b,d]<=w[b,c]+w[a,d](a<b<c<d) 就稱其滿足凸四邊形不等式 
決策單調性 
     w[i,j]<=w[i',j']   ([i,j]屬於[i',j']) 既 i'<=i<j<=j'


於是有以下三個定理 


定理一: 如果w同時滿足四邊形不等式 和 決策單調性 ,則d也滿足四邊形不等式
定理二:當定理一的條件滿足時,讓d[i,j]取最小值的k為K[i,j],則K[i,j-1]<=K[i,j]<=K[i+1,j] 
定理三:w為凸當且僅當w[i,j]+w[i+1,j+1]<=w[i+1,j]+w[i,j+1] 


由定理三知 判斷w是否為凸即判斷 w[i,j+1]-w[i,j]的值隨著i的增加是否遞減 
於是求K值的時候K[i,j]只和K[i+1,j] 和 K[i,j-1]有關,所以 可以以i-j遞增為順序遞推各個狀態值最終求得結果  將O(n^3)轉為O(n^2)