单调队列&单调栈:

有手就行.jpg

四边形不等式:

若\(w(i,j)\)满足\(\forall a\le b<c\le d,w(a,c)+w(b,d)\le w(b,c)+w(a,d)\),那么我们称\(w(i,j)\)满足四边形不等式
若\(w(i,j)\)满足\(\forall a\le b<c\le d,w(b,c)\le w(a,d)\),那么我们称\(w(i,j)\)满足区间包含单调性
对于这样一般形式的转移方程:\(f_{l,r}=\min\limits_{l\le k}(f_{l,k}+f_{k+1,r})+w(l,r)\),若\(w(i,j)\)既满足区间包含单调性又满足四边形不等式,那么\(f\)也满足四边形不等式。设\(s_{i,j}\)表示\(f_{i,j}\)取到最优决策的\(k\),那么\(s_{i,j}\)单调,即\(s_{i,j-1}\le s_{i,j}\le s_{i+1,j}\)。

换根dp:

大概就是先把原本的跑一遍,同时再跑一遍原来的去掉某个子树后的答案。
然后每个点再处理一下。

斜率优化

比如\(f_i=\max\limits_{j\in[1,i)}(f_j-a_ia_j+a_i+a_j)\)。
我们把后面的式子中只含\(i\)的提出来,只含\(j\)的放在一起,同时含\(i,j\)的放在一起。
\(f_i=a_i+\max\limits_{j\in[1,i)}((f_j+a_j)-a_ia_j)\)
后面的东西我们可以看做是经过\((a_j,a_j+f_j)\)的斜率为\(a_i\)的直线的截距。
那么我们要求截距的最大值,这东西就是一个凸包。
根据斜率与横坐标单调性的有无可以用诸如单调栈、二分栈、set(平衡树)维护凸包。

一些DP上的奇奇怪怪的东西的更多相关文章

  1. 一些说明&其他奇奇怪怪的东西

    NOIP考完了,这篇博客彻底咕了.

  2. Meow 攻击会删除不安全(开放的)的Elasticsearch(及MongoDB) 索引,然后建一堆以Meow结尾的奇奇怪怪的索引(如:m3egspncll-meow)

    07月29日,早上照例一来,先连接Elasticsearch查看日志[禁止转载,by @CoderBaby],结果,咦,什么情况,相关索引被删除了,产生了一堆以Meow开头的奇奇怪怪的索引,如下图: ...

  3. [luoguP1922] 女仆咖啡厅桌游吧(奇奇怪怪的树形DP)

    传送门 什么鬼的题? 代码 #include <cstdio> #include <cstring> #include <iostream> #define N 1 ...

  4. [NOI2015]小园丁与老司机(DP+上下界最小流)

    由于每行点的个数不超过1000,所以行内DP可以使用$O(n^2)$算法. 先找到每个点所能直接到达的所有点(x,y,x+y或x-y相同),用排序实现. 第一问:以行为阶段,对于每行,暴力枚举最有路径 ...

  5. luogu P2304 [NOI2015]小园丁与老司机 dp 上下界网络流

    LINK:小园丁与老司机 苦心人 天不负 卧薪尝胆 三千越甲可吞吴 AC的刹那 真的是泪目啊 很久以前就写了 当时记得特别清楚 写到肚子疼.. 调到胳膊疼.. ex到根不不想看的程度. 当时wa了 一 ...

  6. Latex编译过程中遇到的奇奇怪怪的问题及解决方案

    标签(空格分隔): 杂七杂八的问题 有必要写一个博文记录自己在Latex编译时遇到的各种问题,希望可以帮到遇到同样错误的亲故.讲真,一直没有系统的学习Latex,都是投哪个会直接拿那个会的模板来套,然 ...

  7. 在 Github 上找「好东西」的方法

    使用 Github 的站内搜索,搜索: Awesome + 你的关键字

  8. ios ZBar扫二维码奇奇怪怪的错误

    Undefined symbols for architecture armv7: "_CVPixelBufferGetHeight", referenced from: -[ZB ...

  9. 微信小程序奇奇怪怪的语法

    这... <view class="body"> <view class="nav bc_white"> <view class= ...

随机推荐

  1. 记第一次正式线上笔试(Tencent——正式考-技术研发类-综合-2018实习生招聘)

    选择题做的跟傻逼一样,不多说了..大学只打了ACM还不是计算机科班出身的我,连好多名词都不认识..... 三道编程题很简单,下面给出三道题的大致题意以及题解. 1.给出n和m,满足(2m)可以整除n. ...

  2. PIXI兼容微信小游戏

    首先导入官方的weapp-adapter,然后导入pixi.min.js,微信小程序使用ES6的module引用模块,具体参见ES6的Module. import './libs/weapp-adap ...

  3. C# 向上取整数

    PageCount = personInfodb.get_count(selected_id); //数据总数 PageCount = (int)Math.Ceiling(PageCount / (P ...

  4. java+web+大文件上传下载

    文件上传是最古老的互联网操作之一,20多年来几乎没有怎么变化,还是操作麻烦.缺乏交互.用户体验差. 一.前端代码 英国程序员Remy Sharp总结了这些新的接口 ,本文在他的基础之上,讨论在前端采用 ...

  5. 关于判断StringBuffer是否为空

    对于String和StringBuffer来说,都是通过创建新的char value[]数组来达到字符串改变的操作的,只不过String是通过新创建String对象来达到目的, 而StringBuff ...

  6. Yii2.0简单隐藏index.php文件和模块配置和layout布局配置禁用和日志写入配置

    隐藏index.php文件 目的:想去掉浏览器地址栏中的 index.php?r= 这一块. 在/config/web.php中   ’components'=>[]   中添加如下代码: 'u ...

  7. python连接字符串的几种方法--转子(香草拿铁的园子)

    一. str1+str2 string类型 ‘+’号连接 >>> str1="Good" >>> str2="Luck" & ...

  8. kafka-manager怎么查看topic里的数据量

    https://jingyan.baidu.com/article/eb9f7b6d367679869364e8d4.html

  9. SpringMVC中mvc:view-controller的使用

    1.重定向 <mvc:view-controller path="/" view-name="redirect:/admin/index"/> 即如 ...

  10. windows的 附件到底是什么东东?

    附件, 包括其父目录"所有程序" -> "开始菜单", 其实都是一个目录而已!! 要对"开始菜单"下的所有内容进行 自定义 : 添加删 ...