BZOJ1911(斜率优化DP)

1911: [Apio2010]特别行动队

Time Limit: 4 Sec   Memory Limit: 64 MB
Submit: 3108   Solved: 1398
[ Submit][ Status][ Discuss]

Description

BZOJ1911(斜率优化DP)_第1张图片

Input

Output

Sample Input

4
-1 10 -20
2 2 3 4

Sample Output

9

HINT

BZOJ1911(斜率优化DP)_第2张图片


解题思路:

   首先得到转移方程max{f[j]+a(sum[i]-sum[j])²+b*(sum[i]-sum[j]+c}

   假设j>k并且 j比k更加优越则可以得到

   f[j]-f[k]+sum[j]²-sum[k]² /  sum[j]-sum[k]>2*sum[i]*a+b;这样就可以用斜率优化dp了。

   

  然后要分析维护怎样的序列。 因为右边是单调递减的 ,所以维护的是dp[j][k]是单调递减的。然后用单调队列优化。


你可能感兴趣的:(BZOJ1911(斜率优化DP))