日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

斜率优化DP

發(fā)布時間:2023/12/3 编程问答 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 斜率优化DP 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

主要內(nèi)容

形如這樣的 \(\text{DP}\) 轉(zhuǎn)移方程:

\[dp[i]=\max_{L_i\le j\le R_i}\{dp[j]+val(i,j)\} \]

滿足:

  • \({L_i}\)\({R_i}\) 遞增( 前提條件 )。

  • \(R_i≤i\) ( 轉(zhuǎn)移條件 )。

  • \(val(i,j)\)\(i\)\(j\) 相關(guān)(若只與 \(j\) 有關(guān)可以用單調(diào)隊列優(yōu)化DP)。

我們考慮將其變形:

(這一部分先咕掉了~)

例題:

P4072 [SDOI2016]征途

非常裸的斜率優(yōu)化,但是要注意值域較大,應(yīng)該先將式子化簡,減小運(yùn)算的大小,防止運(yùn)算過程中爆 \(\texttt{long}~\texttt{long}\)

P2120 [ZJOI2007]倉庫建設(shè)

需要注意的是,這道題可能不用將 \(n\) 的元素全部分配玩(因為末尾可能有連續(xù)的 \(0\) 使不用在 \(n\) 處再分一段)。

因此我們需要再輸出答案之前將答案與末尾所有連續(xù)非 \(0\) 的取 \(\min\) ,保證取到最大值。

\(\min\) 代碼:

ans=dp[n]; for(int i=n;i>=1;i--)if(!p[i+1]) ans=minll(ans,dp[i]);else break; printf("%lld\n",ans);

總結(jié)

以上是生活随笔為你收集整理的斜率优化DP的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。