摘要:
放一手原题 题解: 第一次写(抄)斜率优化,心里还是有点小激动的。讲一下怎么实现的! 首先我们可以考虑一个朴素的dp:DP[i]表示前i个数字的最少花费,显然我们有一个转移方程 DP[i]=min{DP[j]+M+(sum[i]-sum[j])^2} 但是N^2肯定会超时,我们考虑优化他 假设有k< 阅读全文
摘要:
#include #include #include #define N 1000005 using namespace std; int q[N],a[N],n,m,l,r=-1; int main() { scanf("%d%d",&n,&m); for (int i=1;i=l) l++; while (a[q[r]]>a[i] && r>=l) r--; ... 阅读全文