四边形不等式优化

四边形不等式优化

应用于类似以下dp转移方程。
f i = min ⁡ 1 ≤ j ≤ i ( w i , j , f i ) f_{i}=\min_{1\le j\le i}(w_{i,j},f_{i}) fi=1jimin(wi,j,fi)
假设 w i , j w_{i,j} wi,j 可以在 O ( 1 ) O(1) O(1) 的时间内进行计算。

在正常情况下,此状态转移方程的时间复杂度是 O ( n 2 ) O(n^2) O(n2)

对于问题 i i i,我们需要考虑所有的有关决策 j j j,但是当其满足决策单调性时,就可以缩小决策空间,减少时间复杂度。

四边形不等式:

约定:

对于类似 a ≤ b ≤ c ≤ d a\le b\le c\le d abcd 都成立,若二元函数 w i , j w_{i,j} wi,j 满足以下条件
w a , c + w b , d ≤ w a , d + w b , c w_{a,c}+w_{b,d}\le w_{a,d}+w_{b,c} wa,c+wb,dwa,d+wb,c
则称 w i , j w_{i,j} wi,j 满足四边形不等式

特别的,若等号永远成立,则称 w i , j w_{i,j} wi,j四边形恒等式

重点:因为四边形不等式是用来优化时间复杂度的,所以四边形不等式给出了一个决策单调性的充分不必要条件

利用决策单调性,可以使用二分查找,使其查询时间复杂度降低为 O ( N log ⁡ N ) O(N \log N) O(NlogN)

区间包含单调性

w b , c ≤ w a , d w_{b,c}\le w_{a,d} wb,cwa,d,则称 w w w​ 满足区间包含单调性

  • 既包含,又满足决策单调性。

  • 满足四边形不等式的形象化图片。

方程:
$$
w_{l,r+1}-w_{l,r}=a_{r+1}-a_{\lfloor\frac{l+r+1}{2}\rfloor}
\
w_{l+1,r+1}-w_{l+1,r}=a_{r+1}-a_{\lfloor\frac{l+r+2}{2}\rfloor}
\

$$

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/32163.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Python神经影像数据的处理和分析库之nipy使用详解

概要 神经影像学(Neuroimaging)是神经科学中一个重要的分支,主要研究通过影像技术获取和分析大脑结构和功能的信息。nipy(Neuroimaging in Python)是一个强大的 Python 库,专门用于神经影像数据的处理和分析。nipy 提供了一系列工具和方法,帮助研究人员高效地处理神经影…

【C++实验】多项式加减

题目:一元多项式运算 基本要求: (1) 输入并建立多项式; (2) 输出多项式; (3) 多项式加法 (4) 多项式减法。 测试数据: 代码展示: #i…

[论文阅读笔记31] Object-Centric Multiple Object Tracking (ICCV2023)

最近Object centric learning比较火, 其借助了心理学的概念, 旨在将注意力集中在图像或视频中的独立对象(objects)上,而不是整个图像。这个方法与传统的基于像素或区域的方法有所不同,它试图通过识别和分离图像中的各个对象来进行…

代码随想录——全排列Ⅱ(Leetcode 47)

题目链接 回溯 class Solution {List<List<Integer>> res new ArrayList<List<Integer>>();List<Integer> list new ArrayList<Integer>();boolean[] used;public List<List<Integer>> permuteUnique(int[] nums) {used …

IPD笔记

IPD笔记 先弄一个一图流&#xff0c;改天再过来继续补充 IPD&#xff08;Integrated Product Development&#xff09;即集成产品开发&#xff0c;是一套产品开发的模式、理念与方法。华为的IPD的核心思想是基于市场需求&#xff0c;将产品开发作为一项投资来管理&#xff0c;以…

python pynput实现鼠标点击两坐标生成截图

脚本主要实现以下功能&#xff1a; 按ctrl开始截图&#xff0c;点击两个坐标&#xff0c;保存截图tk输出截图文本信息&#xff0c;文本输出内容倒序处理默认命名为A0自增。支持自定义名称&#xff0c;自增编号&#xff0c;修改自定义名称自增重新计算清空文本框内容 from pyn…

three.js 第十一节 - uv坐标

// ts-nocheck // 引入three.js import * as THREE from three // 导入轨道控制器 import { OrbitControls } from three/examples/jsm/controls/OrbitControls // 导入lil.gui import { GUI } from three/examples/jsm/libs/lil-gui.module.min.js // 导入tween import * as T…

1931java Web披萨店订餐系统idea开发mysql数据库web结构java编程计算机网页源码servlet项目

一、源码特点 java Web 披萨店订餐系统是一套完善的信息管理系统&#xff0c;结合java 开发技术和bootstrap完成本系统&#xff0c;对理解JSP java编程开发语言有帮助&#xff0c;系统具有完整的源代码和数据库&#xff0c;系统主要采用 B/S模式开发。 视频地址&#xff1a;…

Android CTS环境搭建

CTS即Compatibility Test Suite意为兼容性测试&#xff0c;是Google推出的Android平台兼容性测试机制。其目的是尽早发现不兼容性&#xff0c;并确保软件在整个开发过程中保持兼容性。只有通过CTS认证的设备才能合法的安装并使用Google market等Google应用。 搭建CTS测试环境需…

CST初级教程 七

本教程将实例讲解CST设计优化仿真及其操作步骤。下面是一个微带功率分配器的图片&#xff1a; 一 3D建模 Substrate 建模 Step1 绘制Substrate外形 Substrate 的尺寸参数如下&#xff1a; Step2 添加新材料Substrate Step3 将新建的材料分配给Substrate 选中新建材料Substra…

数学建模系列(3/4):典型建模方法

目录 引言 1. 回归分析 1.1 线性回归 基本概念 Matlab实现 1.2 多元回归 基本概念 Matlab实现 1.3 非线性回归 基本概念 Matlab实现 2. 时间序列分析 2.1 时间序列的基本概念 2.2 移动平均 基本概念 Matlab实现 2.3 指数平滑 基本概念 Matlab实现 2.4 ARIM…

WordPress插件:子比zibll主题插件 炙焰美化全开源插件V3.2

在网络世界中&#xff0c;开源内容管理系统&#xff08;CMS&#xff09;已经成为了网站构建的关键工具之一。WordPress&#xff0c;作为最受欢迎的开源CMS之一&#xff0c;其广泛的应用及其灵活性使得它成为了创建和管理各种类型网站的理想选择。而Zibll主题插件&#xff0c;作…

【Android WebView】WebView基础

一、简介 WebView是一个基于webkit引擎、展现web页面的控件。Android的Webview在低版本和高版本采用了不同的webkit版本内核&#xff0c;4.4后直接使用了Chrome。 二、重要类 以WebView类为基础&#xff0c;WebSettings、WebViewClient、WebChromeClient为辅助共同完成安卓段加…

2024年【T电梯修理】免费试题及T电梯修理考试总结

题库来源&#xff1a;安全生产模拟考试一点通公众号小程序 T电梯修理免费试题参考答案及T电梯修理考试试题解析是安全生产模拟考试一点通题库老师及T电梯修理操作证已考过的学员汇总&#xff0c;相对有效帮助T电梯修理考试总结学员顺利通过考试。 1、【多选题】TSGT7005-2012《…

【Java】已解决java.nio.channels.ClosedChannelException异常

文章目录 一、分析问题背景二、可能出错的原因三、错误代码示例四、正确代码示例五、注意事项 已解决java.nio.channels.ClosedChannelException异常 在Java的NIO&#xff08;New I/O&#xff09;编程中&#xff0c;java.nio.channels.ClosedChannelException是一个常见的异常…

XTDrone-多无人机精准降落-配置教程

1 编译AprilTag_ROS AprilTag是一个视觉基准系统&#xff0c;可用于机器人&#xff0c;增强现实和相机校准等。 根据AprilTag可以可靠地计算标签相对于相机的3D位置&#xff0c;方向和ID号。这里我们使用AprilTag的ROS库来实现位姿估计与ID号计算。 编译命令如下&#xff1a; …

【windows|008】DNS服务详解

&#x1f341;博主简介&#xff1a; &#x1f3c5;云计算领域优质创作者 &#x1f3c5;2022年CSDN新星计划python赛道第一名 &#x1f3c5;2022年CSDN原力计划优质作者 ​ &#x1f3c5;阿里云ACE认证高级工程师 ​ &#x1f3c5;阿里云开发者社区专家博主 &#x1f48a;交流社…

家用洗地机哪个品牌好用?四款性价比高的洗地机推荐

还在为下班赶回家打扫卫生而烦恼&#xff1f;曾经的我也是这样&#xff0c;日复一日手动清洁&#xff0c;疲惫不堪。直到有一天&#xff0c;我决定相信现代科技&#xff0c;深入研究了市面上的各种洗地机评测&#xff0c;从此踏入了智能清洁家电的新世界。洗地机作为现代家居的…

Google Earth Engine(GEE)——checkbox的使用

结果 函数: ui.Checkbox(label, value, onChange, disabled, style) A checkbox with a label. Arguments: label (String, optional): The checkboxs label. Defaults to an empty string. value (Boolean, optional): Whether the checkbox is checked. A nu

CinemachineFreelook相机鬼畜抖动的解决方法

又是培训机构的出品。。。。。。 2020.3.27 发现跟随时抖动的原因了&#xff0c;其实应该按照传统相机的跟随逻辑放在late update里执行&#xff0c;但是由于开发cinemachine的开发组很坑地把cinemachine freelook里的三个轨道Damping值默认给了3&#xff0c;于是相机会以每0.7…