题解:
首先裸dp方程为:
F(x)=a*x*x+b*x+c; sum为前缀和
f[i]=f[j]+F(sum[i]-sum[j]);
然后拆开后把带j的放一边,带i的放一边,形成y=kx+b的形式,使y和x都含j不含i,k和b都含i不含j。
得:f[j]+asum[j]*sum[j]-b*sum[j]=2*a*sum[i]*sum[j]+f[i]-a*sum[i]*sum...
分类:
Windows程序 时间:
2014-12-01 17:45:57
阅读次数:
1007
Orz ydc:"这题是我见到的第一道非斜率优化的1D1D了……"话说ydc神犇认为单调队列不是优化咩?、、、已经给跪了Orz决策单调性 1 /************************************************************** 2 Problem: ...
分类:
其他好文 时间:
2014-11-29 18:46:54
阅读次数:
206
题目链接:点击打开链接
题意:
给定n m
下面n个数
dp方程: dp[i] = dp[j] + sum[j+1, i] ^2 +m; ( j
思路:
斜率优化
设 k
dp[j] + sum[j+1, i]^2 +m
整理得到
1、
((dp[j]+sum[j]^2) - (dp[k] + sum[k]^2) ) / (2*(sum[j]-sum[k]))
注意...
分类:
其他好文 时间:
2014-11-25 16:38:47
阅读次数:
145
http://www.lydsy.com/JudgeOnline/problem.php?id=1096首先得到dp方程(我竟然自己都每推出了QAQ)$$d[i]=min\{d[j]+cost(j+1,i)\}+c[i]$$其中$d[i]$是前i个且在i建仓库的最小费用,$cost(j+1,i)$是...
分类:
其他好文 时间:
2014-11-19 20:18:56
阅读次数:
287
本题是利用cdq分治 实现斜率优化的一个题目
斜率优化之前做的几个题都是斜率单调,并且插入点时由于点在某一维单调,所以仅仅操作队首和队尾就能完成优化了
但是本题显然不是
主要参考了两个东西
从《Cash》谈一类分治算法的应用
(Day1)cdq分治相关
这两个直接在百度上搜 ,第一个出来的就是
本题的题意是
一个公司获得了一个厂房n(10^5)天的使用权...
分类:
系统相关 时间:
2014-11-08 15:22:58
阅读次数:
261
题目大意:给定n个厂房,在其中一些建仓库,一个点如果没有仓库就要把仓库运到右侧的仓库中,求最小花销
很简单的斜率优化……之前刷斜率优化的时候怎么居然把这道题漏了
令f[i]为在i点建厂使i之前的货物全部安置的最小花销
则有
fi=min{fj+∑k=j+1i(Xi?Xk)×Pk}+Ci=min{fj+Xi×∑k=j+1iPk?∑k=j+1iXk×Pk}+Ci
公式编辑器就是爽...
分类:
其他好文 时间:
2014-10-27 12:51:25
阅读次数:
199
我去什么破题跳调了我一个半小时。不是裸的斜率优化吗。。。我去我去我去我去我去我去!首先我们倒着读进来,然后就省略了倒过来做的问题。然后写出DP方程:令f[i]表示选i作为塔时1到i的总代价,则f[i] = min(f[j] + w(i, j) + a[i]) 其中有j 11 #include 12 ...
分类:
其他好文 时间:
2014-10-21 21:28:11
阅读次数:
273
容易得出简单的递推方程如下
f[i] = min{f[j] + sum[i] - sum[j] - (i-j) *x[j+1] }
然后发现复杂度太高
这时可以看出是一个比较经典的斜率优化
f[i] = min{f[j] +j *x[j+1] -sum[j] -i *x[j+1]} +sum[i]
按照http://blog.csdn.net/sdj22...
分类:
其他好文 时间:
2014-10-21 01:08:17
阅读次数:
174