【dp决策单调性&四边形不等式优化】
时间:2022-08-05
本文章向大家介绍【dp决策单调性&四边形不等式优化】,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
首先声明两个误区:
- 代价函数满足四边形不等式是dp具有决策单调性的充分不必要条件,所以通过打表,发现dp具有决策单调性不能说明代价函数满足四边形不等式
- 仅有dp的的决策点单调这一个条件是无法优化的,因为二分加单调队列优化需要满足一个条件:在新求出一个fi时,考虑i可以作为那些位置的最优决策,需要找到一个位置满足在该位置之前,p数组目前存储的决策都比i优,在这位置之后,p数组存储的决策都比i差,即满足可二分性,但是仅有决策单调这一个条件是不一定满足可二分性的。
实际上四边形不等式是个比决策单调性更强的条件,他能保证在任意一个时刻存储最优决策点的p数组都是单调的,换句话说,对于任意一个决策p,如果在x处p优于1p-1的所有决策,那么在任意大于x处,决策p都优于1p-1的所有决策,而决策单调性只能保证在最后时刻p数组是单调的。
原文地址:https://www.cnblogs.com/glq-Blog/p/16555620.html
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- 工程管理篇 | APP环境分离的实现
- 代码管理| 本地Git仓库和远程仓库的创建及关联
- 代码管理| 简易教程之Cocopods的安装和使用
- 设计模式| 行为型模式 (上)
- 设计模式| 行为型模式 (下)
- 设计模式| 结构型模式
- MyBatis 中 ResultType 和 ResultMap 的区别
- 面向对象编程中的六大原则
- 代码管理| 手把手教你封装自己的静态库SDK
- 代码管理| 全面了解Git使用相关
- 设计模式| 创建型模式
- 动画| 魔性形变之CGAffineTransform的使用
- mysql 获取最近6个月的日期的 sql 实例
- bootstrap-table 前端分页,刷新事件代码实例
- Kotlin 全栈开发之 前端 JavaScrip