1.2.区间动态规划

来源:互联网 发布:中方信富软件下载 编辑:程序博客网 时间:2024/05/16 00:43
共性总结本类问题与下一章的划分问题的决策的分割点无序交集比较大(占本类问题的30%)。题库a)石子合并链接:http://acm.nuaa.edu.cn/acmhome/problemdetail.do?&method=showdetail&id=1081b)模版匹配(CEOI01,Patten)这题特殊的地方是状态的值是一个集合而不是一个数。黑书上有,但是没找到题库里哪个可以交的。c)不可分解的编码(ACM World Final 2002)黑书上有,但是没找到题库里哪个可以交的。d)Electric Path(ural1143)链接:http://acm.timus.ru/problem.aspx?space=1&num=1143e)邮局(IOI2000 Day2 1) poj 1160链接:http://acm.pku.edu.cn/JudgeOnline/problem?id=1160若状态表示的思路从第i个村庄可以从属于哪个邮局,无最优子结构。转变一个方向:第k个邮局可以“控制”一个区间的村庄[i,j]。于是方程就显然了:f(k,i,j)=min{f(k-1,p,i-1)+w(i,j)}(k-1<=p<=i-1)S(i) 为村庄i到原点的距离。w(i,j)=min{k| Sum{|S(k)-S(p)|}(i<=p<=j)}(i<=k<=j) 找到[i,j]间最好的一个邮局点。不过可以发现Sum{|S(k)-S(p)|是单调的,所以取中位数就可以了。即上式中k的取值范围只有floor((i+j)/2), ceil((i+j)/2)两个。Floor是下取整。Ceil是上取整。这样每次转移时间降到O(1)。注意到是区间连续的,即(p,i-1) 和(i, j) 中的 i-1, i是连续的,所以空间可以降维:f(i,j)表示放前i个邮局到前j个村庄的最优值。f(i,j)=min{f(i-1,p-1)+w(p,j)}(i-1<=p<=j-1}e(i,j) 为当f(i,j)到达最优值时的p.通过证明四边形不等式,得到e(i,j)<=e(i,j+1)<=e(i+1,j+1)决策数量又少了一个数量级。
原创粉丝点击