【学习笔记】动态规划—各种 DP 优化 【大前言】 个人认为贪心,\(dp\) 是最难的,每次遇到题完全不知道该怎么办,看了题解后又瞬间恍然大悟(TAT)。这篇文章也是花了我差不多一个月时间才全部完成。 【进入正题】 用动态规划解决问题具有空间耗费大、时间效率高的特点,但也会有时间效率 ...
noip 考了,赶紧补一发。 不得不说网上的题解还是不错的ljq的代码吼啊 一开始看的博客 模板 其实我感觉看博客不如看别人优秀的代码来的快 朴素 dp 的想法就是 f i, 表示当前点 i 选还是不选。 而动态 dp 的思想就是,把 dp 方程写成矩阵乘法的形式,然后用数据结构来维护区间矩阵乘积。 首先是树链剖分的思想 讲一讲自己的感想 首先我们为了使得 f 带修改,引入了树链剖分套线段树维护 ...
2018-11-27 11:47 1 759 推荐指数:
【学习笔记】动态规划—各种 DP 优化 【大前言】 个人认为贪心,\(dp\) 是最难的,每次遇到题完全不知道该怎么办,看了题解后又瞬间恍然大悟(TAT)。这篇文章也是花了我差不多一个月时间才全部完成。 【进入正题】 用动态规划解决问题具有空间耗费大、时间效率高的特点,但也会有时间效率 ...
作为考察范围最广,考察次数最多的算法,当然要开一篇博客来复习啦。 子曰:温故而知新,可以为师矣 我复习DP时有一些自己对DP的理解,也就分享出来吧。 ——正片开始—— 动态规划算法,即Dynamic Programming(以下简称为DP),是解决多阶段决策过程最优化问题的高效数学方法 ...
1 dp 和 dp套dp dp 套 dp 中的 dp 一定是 dp 套 dp 的基础,而 dp 套 dp 也就是从 dp 的基础上 dp 而来的。 没错,上面这句话就是套娃。 为了方便大家理解,从这句话开始,dp套dp 将作为一个不加空格的词,方便区分。 dp 的时候,我们一般 ...
【学习笔记】动态规划—斜率优化DP(超详细) \(update\ 2020.6.19:\) 临近退役,终于来修锅啦QAQ(更正基础概念上的错误;\(\text{Latex}\) 规范化;重新排版;增加标题号;添加【关于单调性的研究】;添加 \(\text{CDQ}\) 维护斜率优化的例子 ...
今天学习了树形\(dp\),一开始浏览各大\(blog\),发现都\(TM\)是题,连个入门的\(blog\)都没有,体验极差。所以我立志要写一篇可以让初学树形\(dp\)的童鞋快速入门。 树形\(dp\) 概念类 树形\(dp\)是一种很优美的动态规划,真的很优美真的,前提是在你 ...
问题: 有一些问题,通常见于二维的DP,另一维记录当前x的信息,但是这一维过大无法开下,O(nm)也无法通过。 但是如果发现,对于x,在第二维的一些区间内,取值都是相同的,并且这样的区间是有限个,就可以批量处理。 思想: 通过动态开点线段树维护第二维, 如果某个节点没有儿子 ...
知识点 动态规划(简称dp),可以说是各种程序设计中遇到的第一个坎吧,这篇博文是我对dp的一点点理解,希望可以帮助更多人dp入门。 先看看这段话 动态规划(dynamic programming)是运筹学的一个分支,是求解决策过程(decision process)最优 ...
我们知道,用DP解决一个问题的时候很重要的一环就是状态的表示,一般来说,一个数组即可保存状态。但是有这样的一些题 目,它们具有DP问题的特性,但是状态中所包含的信息过多,如果要用数组来保存状态的话需要四维以上的数组。于是,我们就需要通过状态压缩来保存状态,而 使用状态压缩来保存状态的DP就叫做状态 ...