[BZOJ1911] [Apio2010]特别行动队
傳送門
http://www.lydsy.com/JudgeOnline/problem.php?id=1911
題目大意
把連續(xù)的人分組,每組[j,k]的價(jià)值為a(∑ki=jx[i])2+b∑ki=jx[i]+c詢問所有組的價(jià)值和的最大值
題解
dp[i]=max{dp[j]+a?(sum[i]?sum[j])2+b?(sum[i]?sum[j])+c}
dp[i]=max{dp[j]?2a?sum[i]sum[j]+sum[j]2?b?sum[j]}+a?sum[i]2+b?sum[i]+c
考慮斜率優(yōu)化
假設(shè)j<k且k更優(yōu)
dp[j]?2a?sum[i]sum[j]+sum[j]2?b?sum[j]<=dp[k]?2a?sum[i]sum[k]+sum[k]2?b?sum[k]
(dp[j]+sum[j]2?b?sum[j])?(dp[k]+sum[k]2?b?sum[k])<=2a?sum[i](sum[j]?sum[k])
j<k,sum[i]單調(diào)增,sum[j]?sum[k]<0
(dp[j]+sum[j]2?b?sum[j])?(dp[k]+sum[k]2?b?sum[k])sum[j]?sum[k]>=2a?sum[i]
我們要最大值,所以隊(duì)尾保留斜率更大的
總結(jié)
以上是生活随笔為你收集整理的[BZOJ1911] [Apio2010]特别行动队的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: rrpp协议如何修改_【网安学术】基于N
- 下一篇: 多渠道归因分析(Attribution)