四边形不等式优化 dp (doing)
1. 四边形不等式与决策单调性
定义(四边形不等式)
设 \(w(x,y)\) 是定义在整数集合上的二元函数,若对于任意 \(a\le b\le c\le d\),都有
\[w(a,d)+w(b,c)\ge w(a,c)+w(b,d)
\]则称 \(w\) 满足 四边形不等式 .
定义(区间包含单调性)
设 \(w(x,y)\) 是定义在整数集合上的二元函数,若对于任意 \(a\le b\le c\le d\),都有
\[w(a,d)\ge w(b,c)
\]则称 \(w\) 满足 区间包含单调性 .
定理(四边形不等式的另一种定义)
设 \(w(x,y)\) 是定义在整数集合上的二元函数,其满足四边形不等式当且仅当对于任意 \(a\le b\),都有\[w(a,b+1)+w(a+1,b)\ge w(a,b)+w(a+1,b+1)
\]
证明后补
定义(决策单调性)
设 \(w(x,y)\) 是定义在整数集合上的二元函数,\[dp_i=\min_{0\le j<i}\{dp_j+w(j,i)\},\,p_i=\mathop{\arg\max}\limits_{0\le j<i}\{dp_j+w(j,i)\}
\]若 \(p_i\) 在 \([1,n]\in\mathbb Z\) 上单调不减,则称 \(dp\) 具有 决策单调性
定理
若 \(w\) 满足四边形不等式,且\[dp_i=\min_{0\le j<i}\{dp_j+w(j,i)\}
\]则 \(dp\) 有决策单调性
证明后补
2. 决策单调性优化 dp - (i)
考虑维护 \(p\) 数组,根据 \(p_i\) 的单调性,可以想到 \(p_i\) 的形式大概是:
a a a a a b b b c c c c d d e
(a < b < c < d < e)
再求出一个新的 \(dp\) 时,我们可以找到一个位置,然后让后面的数全部改掉
这个用一个队列维护三元组 \((a,l,r)\) 表示 \([l,r]\) 的决策全部是 \(j\)
可以像单调队列一样排除无用决策 .
关于符号
- \(\mathop{\arg\max}\limits_x \varphi(x)\) 表示使 \(\varphi(x)\) 取到最小值的 \(x\) 的集合,\(\arg\min\) 类似 .
四边形不等式优化 dp (doing)的更多相关文章
- hdu 2829 Lawrence(四边形不等式优化dp)
T. E. Lawrence was a controversial figure during World War I. He was a British officer who served in ...
- BZOJ1563/洛谷P1912 诗人小G 【四边形不等式优化dp】
题目链接 洛谷P1912[原题,需输出方案] BZOJ1563[无SPJ,只需输出结果] 题解 四边形不等式 什么是四边形不等式? 一个定义域在整数上的函数\(val(i,j)\),满足对\(\for ...
- 【转】斜率优化DP和四边形不等式优化DP整理
(自己的理解:首先考虑单调队列,不行时考虑斜率,再不行就考虑不等式什么的东西) 当dp的状态转移方程dp[i]的状态i需要从前面(0~i-1)个状态找出最优子决策做转移时 我们常常需要双重循环 (一重 ...
- codevs3002石子归并3(四边形不等式优化dp)
3002 石子归并 3 参考 http://it.dgzx.net/drkt/oszt/zltk/yxlw/dongtai3.htm 时间限制: 1 s 空间限制: 256000 KB 题目等级 ...
- CF321E Ciel and Gondolas Wqs二分 四边形不等式优化dp 决策单调性
LINK:CF321E Ciel and Gondolas 很少遇到这么有意思的题目了.虽然很套路.. 容易想到dp \(f_{i,j}\)表示前i段分了j段的最小值 转移需要维护一个\(cost(i ...
- HDU 2829 Lawrence (斜率优化DP或四边形不等式优化DP)
题意:给定 n 个数,要你将其分成m + 1组,要求每组数必须是连续的而且要求得到的价值最小.一组数的价值定义为该组内任意两个数乘积之和,如果某组中仅有一个数,那么该组数的价值为0. 析:DP状态方程 ...
- 四边形不等式优化DP——石子合并问题 学习笔记
好方啊马上就要区域赛了连DP都不会QAQ 毛子青<动态规划算法的优化技巧>论文里面提到了一类问题:石子合并. n堆石子.现要将石子有次序地合并成一堆.规定每次只能选相邻的2堆石子合并成新的 ...
- POJ 1160 四边形不等式优化DP Post Office
d(i, j)表示用i个邮局覆盖前j个村庄所需的最小花费 则有状态转移方程:d(i, j) = min{ d(i-1, k) + w(k+1, j) } 其中w(i, j)的值是可以预处理出来的. 下 ...
- BZOJ 1010 玩具装箱toy(四边形不等式优化DP)(HNOI 2008)
Description P教授要去看奥运,但是他舍不下他的玩具,于是他决定把所有的玩具运到北京.他使用自己的压缩器进行压缩,其可以将任意物品变成一堆,再放到一种特殊的一维容器中.P教授有编号为1... ...
- 邮局加强版:四边形不等式优化DP
题目描述 一些村庄建在一条笔直的高速公路边上,我们用一条坐标轴来描述这条公路,每个村庄的坐标都是整数,没有两个村庄的坐标相同.两个村庄的距离定义为坐标之差的绝对值.我们需要在某些村庄建立邮局.使每个村 ...
随机推荐
- 一窥 AJAX
一窥 AJAX 本文写于 2020 年 6 月 7 日 AJAX 这个词非常常见,如果使初学者,说不定还会非常害怕这个名字看起来非常高端.非常难的技术. AJAX,全称 Async JavaScrip ...
- 【Rust】使用HashMap解决官方文档中的闭包限制
问题概述 值缓存是一种更加广泛的实用行为,我们可能希望在代码中的其他闭包中也使用他们.然而,目前 Cacher 的实现存在两个小问题,这使得在不同上下文中复用变得很困难. 第一个问题是 Cacher ...
- VMware虚拟机中安装Linux操作系统(ubuntu)
一.准备工作: 1.下载VMware虚拟机 下载地址:https://www.vmware.com/cn/products/workstation-pro/workstation-pro-evalua ...
- 6.Docker网络
什么是 Docker网络 docker 不启动,默认网络情况 ens33 lo virbr0 在 CentOS7 的安装过程中如果有选择相关虚拟化的的服务安装系统后,启动网卡时会发现有一个以网桥连接的 ...
- WinUI3开发笔记(Ⅱ)
WinUI3中的"MessageBox.Show()" # (一,如何实现) "开发WinUI3,第一个不适就是消息弹窗!" WinUI中没有C#.NetFra ...
- 技术分享 | 云原生多模型 NoSQL 概述
作者 朱建平,TEG/云架构平台部/块与表格存储中心副总监.08年加入腾讯后,承担过对象存储.键值存储,先后负责过KV存储-TSSD.对象存储-TFS等多个存储平台. NoSQL 技术和行业背景 No ...
- 137_Power BI 自定义矩阵复刻Beyondsoft Calendar
博客:www.jiaopengzi.com 焦棚子的文章目录 请点击下载附件 一.背景 前两天我们用PBI原生的视觉制作了自定义的热力图,今天我们来复刻一个Beyondsoft Calendar 1. ...
- python之模块(os、sys、json、subprocess)
目录 os模块 sys模块 json模块 subprocess模块 os模块 os模块主要是与操作系统打交道. 导入os模块 import os 创建单层文件夹,路径必须要存在 os.mkdir(路径 ...
- WPF开发随笔收录-带递增递减按钮TextBox
一.前言 今天分享一下如何实现带递增递减按钮的TextBox控件 二.正文 1.之前的博客分享了一篇自定义XamlIcon控件的文章,这次就直接在那个项目的基础上实现今天这个自定义控件 2.首先添加两 ...
- 命令行工具tabby--gi t仓库Token的使用
命令行工具tabby--git仓库Token的使用 欢迎关注H寻梦人公众号 前言 再见 Xshell !这款开源的终端工具逼格更高! 终端神器--Tabby Terminal electerm is ...
