一、四边形不等式 感觉四边形不等式用时候是:利用第j-1层dp[i][j-1]和dp[i+1][j-1]两个值转移位置s[i][j-1],s[i+1][j-1]来约束 k ...
转载 2021-08-05 14:21:23
86阅读
一、预备知识 1. $tD/eD$ 问题:状态 t 维,决策 e 维。时间复杂度$O(n^{e+t})$。 2. 四边形不等式: 称代价函数 w 满足凸四边形不等式,当:$w(a,c)+w(b,d)\le w(b,c)+w(a,d),\ a $。每次要做就是: 二分找到d(j)在哪个列区间,弹出后
DP
原创 2021-07-22 13:57:05
162阅读
对于刷题量我觉得肯定是刷越多越好(当然这是对时间有很多的人来说。 但是在我看来我的确适合刷题较多那一类人,应为我对知识应用能力并不强。这两天学习内容是dp斜率优化。当然我是不太会。 这个博文肯定也是不断更新(随着我对斜率优化不断深入理解。 这两天做题是一道经典任务安排。 这道题
转载 2019-01-20 21:47:00
94阅读
稍微浅浅地总结一下目前认识到四种利用凸性优化 DP 方法。 单调队列 考虑对于 \(f_i=\max_{j} f_j+v_j+p_iq_j\) 形式。把 \(j\) 考虑成一个 \((q_j,v_j+f_j)\) 点,然后 \(f_j+v_j+p_iq_j\) 即过点斜率为 \(-p_i\ ...
转载 2021-08-14 17:56:00
459阅读
2评论
dp多维状态优化 面对一个多维dp问题,根据维度之间联系紧密程度,我们可以选择 1.维度之间紧密相关,只能直接枚举 2.维度之间完全无关,只是贡献通过某种形式相加,可以割裂为两个dp处理 3.介于1,2之间,不能割裂计算,但是可以将转移过程割裂为若干步来优化 e.g.1: 选区间1 问题描述 对 ...
转载 2021-09-08 18:43:00
196阅读
2评论
hdu 2993MAX Average Problemhttp://acm.hdu.edu.cn/showproblem.php?pid=2993这题都整死我了,代码基本上和别人AC都快一样了还是不对。郁闷死了快。。最后终于发现了错误点自判断斜率时y1*x2 <= y2*x1 如果用整型就会超数据类型肯定会错,而上边用整型可以过,
转载 2012-08-28 11:34:00
115阅读
2评论
题意: 将含有N个元素一个集合分成M个子集,使得每个子集最大值与最小值平方差和最小。 可以想到贪心将元素从小到大排序,很快可以得出dp[i][j]-前i个子集分j个元素最小花费,dp方程 dp[i][j]=dp[i-1][k]+(a[j]-a[k+1]);但是需要三重循环,时间复杂度接受不了
转载 2019-11-18 20:28:00
107阅读
2评论
常见DP优化类型1单调队列直接优化如果a[i]单调增的话,显然可以用减单调队列直接存f[j]进行优化。 2斜率不等式即实现转移方程中i,j分离。b单调减,a单调增(可选)。令:在队首,如果g[j,k]>=-a[i],那么j优于k,而且以后j也优于k,因此k可以重队列中直接删去。在队尾,如果x<y<z,且g[x,y]<=g[y,z],也就是说只要y优于x一定可以得出z优于
转载 2017-08-24 02:54:00
60阅读
2评论
...
IT
转载 2021-09-09 18:36:00
160阅读
2评论
斜率优化DP 两步骤; 1.造出DP方程; 2.通过DP方程构造出一个斜率优化方程; 具体怎么构造呢? 如 两个点 a b; 构造出 DP(a)<DP(b) 然后通过这一式子,构造出一个下凸包(后面的边斜率大于前面的边) 只有下凸包点是可能作为状态转移方程转移点,其他点都不可能。 然后,构造完
转载 2019-11-18 16:37:00
130阅读
2评论
主要内容 形如这样 \(\text{DP}\) 转移方程: \(dp[i]=\max_{L_i\le j\le R_i}\{dp[j]+val(i,j)\}\) 满足: \({L_i}\) , \({R_i}\) 递增( 前提条件 )。 \(R_i≤i\) ( 转移条件 )。 \(val(i,j) ...
转载 2021-08-12 13:48:00
150阅读
2评论
\(\text{Example 1 : CF372C Watching Fireworks is Fun}\) : 题目大意:城镇中有 个位置,有 \(n\) 个烟花要放。第 \(i\) 个烟花放出时间记为 \(t_i\),放出位置记为 \(a_i\)。如果烟花放出时候,你处在位置 \(x\) ...
转载 2021-10-08 11:19:00
136阅读
2评论
DP优化 斜率优化 求$f(i)=max{f(j)+(s(i)-s(j))^2}$,\(n\leq 10^6\). 其中$,s(x),\(是只和\),x,$有关单调减函数,可以快速计算 显然我们不能$,\Theta(n^2),$暴力计算,考虑减少决策数,化简得: \[ f(i)=max\{f(j) ...
转载 2021-10-18 21:46:00
56阅读
2评论
斜率优化 \(DP\) 引入: 通过一道题来引入吧: [HNOI2008]玩具装箱 题意: 给你一些物品,每个物品有大小,你可以选择多个背包装这些东西,背包费用由背包中物品大小决定,问你这些物品放进背包中,需要背包制作总费用最少值。 分析: 这题暴力 \(dp\) 方程得出来比较简单,记为: \ ...
转载 2021-09-27 22:03:00
156阅读
2评论
dp优化瞎吹 众所周知,我们在dp转移过程中,可以用一些方法,优化转移复杂度。 由于我这边资料不多,并且例题要么很简单,要么很难,所以我学脑子有点乱,东西也乱,抱歉啊 前言 对于dp优化,我个人有些浅显理解,不知恰当不恰当 我感觉它大概就是,我先写一个dp,再想办法把它变得更快。 怎样 ...
转载 2021-08-08 15:35:00
102阅读
2评论
省队第三轮集训比赛好多题不会啊……来补一补知识点吧。 众所周知单调队列优化是斜率优化基础,所以肯定要先来说一下单调队列优化DP/se ##滑动窗口 滑动窗口问题可以用来解决数组或者是字符串子元素问题,通常是将双嵌套循环转变为单循环问题,从而将时间复杂度降为线性。 例如,我们给定一个数组,求其中长 ...
转载 2021-07-19 17:54:00
111阅读
2评论
今天又是摸鱼一天,就看了一下单调队列优化。 单调队列使用满足几个条件:1.区间最值询问 2.区间在滑动 单调队列本质是:当一个选手比你小,且比你强,那你就没有机会了——Chen_zhe 我们要维护一个单调队列,满足队列里面的两个值,即元素在原来排列中位置,还有元素值,都是单调递增 ...
转载 2021-10-19 20:58:00
136阅读
2评论
dp[i] = min(dp[j]+(sum[...
原创 2023-05-31 09:31:55
0阅读
Paint PearlsTime Limit: 4000/2000 MS (Java/Others) Memor
原创 2023-04-24 23:48:51
58阅读
斜率优化DP入门 参考蓝书。 斜率优化模型一般是: \[ f[i]={\min/\max}_{L(i)\leq j\leq R(i)}{f[j]+val(i,j)} \] 其中, \(val(i,j)\) 仅和 \(i\) 或 \(j\) 有关时,我们可以想到单调队列优化 当其同时与 \(i,j\ ...
  • 1
  • 2
  • 3
  • 4
  • 5