首页 > 其他分享 >凸性 DP 优化

凸性 DP 优化

时间:2025-01-21 20:58:38浏览次数:1  
标签:前缀 卷积 凸性 DP Delta 优化 单调 性质

首先这里点名 \(\rm WQS\) 二分还有决策单调性,但是今天就不写这个了,今天学了一些进阶的东西。

闵可夫斯基和

这个东西时是用来优化一类凸函数卷积的,一般就是背包或者分治时使用。最常用的是 \((\max / \min, +)\) 卷积。

首先考虑这个卷积式:\(f_k = \max_{i + j = k} \{ g_i + h_j \}\),暴力做卷积是 \(O(n^ 2)\) 的。

其中 \(g, h\) 具有凸性时,有以下性质:

性质 \(1\). \(f\) 也具有凸性。

考虑卷积的组合意义,假设我们将 \(g, h\) 分别差分得到 \(\Delta g, \Delta h\),每个数看做有相应价值的物品。那么 \(f_k\) 就相当于在两个数组中选出 \(k\) 个物品,且满足在 \(\Delta g, \Delta h\) 中都是一个前缀。但由于具有凸性,\(\Delta g, \Delta h\) 都是单调下降的,因此每次选的物品的价值都是单调下降的,即 \(\Delta f\) 是单调下降的。因此 \(f\) 具有凸性。这进一步给出了性质二。

性质 \(2\). \(\Delta f\) 与 \(\Delta g, \Delta h\) 排序后一样

首先把 \(\Delta g, \Delta h\) 排序后得到一个数组 \(a\),因为 \(g, h\) 都有凸性,因此不难发现 \(a\) 中的某一个前缀都对应着 \(\Delta g, \Delta h\) 中的两个前缀的并集。因此,对于 \(f_i\),直接取 \(a\) 中最大的前 \(i\) 个数是合法的。同时,这个也是答案上界。

因此,我们有了第二个性质后,不难通过归并排序直接直接做到 \(O(n)\) 卷出 \(f\)。这个被我们成为闵可夫斯基和。

标签:前缀,卷积,凸性,DP,Delta,优化,单调,性质
From: https://www.cnblogs.com/little-corn/p/18684410

相关文章

  • 【Azure APIM】APIM服务配置网络之后出现3443端口不通,Management Endpoint不健康状态
    问题描述APIM服务在配置网络之后,查看网络状态发现ManagementEndpoint是不健康状态,提示无法连接到3443端口。错误消息:Failedtoconnecttomanagementendpointatxxxxxxxx.management.azure-api.cn:3443foraservicedeployedinavirtualnetwork.Makesuretofollo......
  • 解决 WebSocket 连接断开问题:前端心跳机制的实现与优化
    在开发过程中,我们经常会遇到需要实时通信的场景,而WebSocket是一种非常合适的技术选择。然而,在实际使用WebSocket的过程中,我们可能会遇到连接频繁断开的问题。最近,我在一个项目中就遇到了这样的问题,经过一番探索和优化,终于找到了解决方案,现在与大家分享一下。问题背景在项目......
  • 2.优化算法
    2.1小批量梯度下降应用:深度学习处理大数据集的时候会选用小批量梯度下降算法深度学习在大数据领域应用广泛,但是海量数据的训练又涉及速度问题,所以选择算法就尤其重要。批量梯度下降:可以同时处理整个训练集(完整的训练集X,Y)举例:把一个500w的训练集分成1000份,每份5000个......
  • [Deep Learning] 使用keras创建多层感知机神经网络模型并添加dropout正则化策略优化银
    内容实现概述本文主要讲述使用keras库内置的Sequential(序列)模型,实现银行客户流失率预测,它属于一个二分类问题(因为针对单个客户来说,他要么已流失要么未流失)。具体实现过程如下:导入所需库:预先导入nump、pandas、sklearn以及keras库导入数据:使用pandas库的文件解析方法read_csv(......
  • linux kernel端口耗尽优化
     bind()源ip之后,分配端口会有端口耗尽问题。 linuxkernel如何bind()VRF端口上的源IPperf看到如下图:   在bind的时候因为还没有目的ip和port,所以可用端口会很少。socketopt IP_BIND_ADDRESS_NO_PORT 会把分配端口延后至connect阶段,如下图内核代码:/net/ipv4/af_in......
  • 【金融资产组合模型进化论】5. 马科维茨资产组合模型+AI金融智能体(qwen-max)+政策信
    目录0.承前1.AI金融智能体1.1WhatisAI金融智能体1.2WhyisAI金融智能体1.3HowtoAI金融智能体2.数据要素&计算流程2.1参数集设置2.2数据获取&预处理2.3收益率计算2.4因子构建与预期收益率计算2.5协方差矩阵计算2.6投资组合优化2.7持仓筛选2.8AI金融智......
  • 分治优化DP
    分治优化DPLink\(\text{Para.1}\hspace{0.2cm}\)四边形不等式对于形如\(\text{dp}[i][j]=\min_{k<j}{\text{dp}[i-1][k]+\text{cost}[k+1][j]}\)的形式,若\(\text{cost}\)满足\(\text{cost}[a][c]+\text{cost}[b][d]\leq\text{cost}[a][d]+\text{cost}[b......
  • 【计算机网络】传输层协议TCP与UDP
    传输层    传输层位于OSI七层网络模型的第四层,主要负责端到端通信,可靠性保障(TCP),流量控制(TCP),拥塞控制(TCP),数据分段与分组,多路复用与解复用等,通过TCP与UDP协议实现。端到端通信    传输层通过端口号(Port)来区分不同进程。端口号为16位数字(0-65535),用于标......
  • Github开源项目源码阅读(progschjThreadPool)
    项目地址:https://github.com/progschj/ThreadPool项目源码:#ifndefTHREAD_POOL_H#defineTHREAD_POOL_Hinclude<vector>include<queue>include<memory>include<thread>include<mutex>include<condition_variable>include<f......
  • BFS及其优化
    BFS及其优化BFS可实现问题:[连通块](DFS也行)[最短路](DFS又行)[曼哈顿距离](DFS好像大概也许行)大概步骤:1.起点入队列,打标记。2.弹出队首进行操作。3.按照题目要求加入队列新点并打标记。例题:1.accoders【一本通提高篇广搜的优化技巧】山峰和山谷2065思路......