DP总结

5 篇文章 0 订阅

参考(拷贝)

http://blog.csdn.net/loriex/article/details/19755845



四边形不等式

http://blog.csdn.net/willinglive/article/details/41215463


http://blog.csdn.net/willinglive/article/details/38230503

http://blog.csdn.net/willinglive/article/details/41314111

传说中的dp降维方法~

相信查阅过N多资料的亲们应该对它的适用范围了然于心了吧。。

形如dp[i] = min(dp[j] - s[i]s[j])   已知s[]数组单调递增

那么发现j↑ dp[j]↑  -s[i][j]↓

于是乎我以j为横坐标,dp[j]为纵坐标

对前面i-1个建立一个坐标系,得到了一些点(用队列储存~。。)

然后我们发现,一个点左上方的点全部可以舍去!(可以轻易证明的哦~)

所以我们去掉这些点后得到一个向上的曲线

然后我们发现,如果有a,b,c三点从左到右排列,且a->b的斜率 > b->c的斜率

那么b点也可以舍去!(证明其实还是有点简单的。。~)

所以我们得到了一个向上的斜率不断增加的曲线,就称为凸壳吧~

然后我么发现,如果有a,b,c三点从左到右排列,且a点目前优于b点,那么a点一定优于c点

如果a点目前不如b点,那么以后a点也不会优于b点

PS:这个优于与否就是比较dp[a] - s[i]s[a]     dp[b] - s[i]s[b]哪个小,小的优(因为要取min)

有了这两条结论,所以我们只需要维护一个凸壳就行了,

每次求dp[i]时比较前两个,如果第一个点优取第一个点,否则去掉第一个点再比较现在的前两个

得到答案后再把这个i点推入待决策队列中,然后根据i点更新队列

(就是从后往前不断删点直到斜率符合凸壳的性质)

每个点最多进队一次出队一次,所以维护一个凸壳是O(n),计算是O(1),总复杂度O(n*1);

然后推荐两个题目做做啊~

bzoj 1096仓库建设



单调队列/斜率:

斜率优化的基本思想就是转化为前缀和

关于斜率有几个问题需要注意:

1.有时候斜率不存在,即斜率表达式中的分母为0,需要转化为乘法,或者特判

2.乘法有时候会爆int,需要转LL,爆LL的话转double

3.有些题卡时间,斜率中的double除法比乘法慢至少1倍!需要转乘法

斜率单调:单调队列

http://blog.csdn.net/willinglive/article/details/41290871

http://blog.csdn.net/willinglive/article/details/37741477

http://blog.csdn.net/willinglive/article/details/39700123

http://blog.csdn.net/willinglive/article/details/38230533

http://blog.csdn.net/willinglive/article/details/41307257

http://blog.csdn.net/willinglive/article/details/41314111

http://blog.csdn.net/willinglive/article/details/41346567

斜率不单调:二分或三分

坐标也不单调:平衡树或者cdq分治

待解决的题:icpc 2011 F works NOI 货币兑换 bzoj上一堆 NOI 2014 D2T3 购票


递推问题:

http://blog.csdn.net/willinglive/article/details/37768911

http://blog.csdn.net/willinglive/article/details/37769095

http://blog.csdn.net/willinglive/article/details/37937669

http://blog.csdn.net/willinglive/article/details/40550187

http://blog.csdn.net/willinglive/article/details/40742709

http://blog.csdn.net/willinglive/article/details/40744807


LIS | LCS专题:

http://blog.csdn.net/willinglive/article/details/37768105

http://blog.csdn.net/willinglive/article/details/39722749


特殊的预处理技巧:

http://blog.csdn.net/willinglive/article/details/37936949


特殊的转移技巧:

http://blog.csdn.net/willinglive/article/details/37937593

http://blog.csdn.net/willinglive/article/details/37937225


特殊的状态设计:

http://blog.csdn.net/willinglive/article/details/40741775


影响未来状态处理的DP(参考论文《对一类动态规划问题的研究》):

http://blog.csdn.net/willinglive/article/details/38072217

DAG:

http://blog.csdn.net/willinglive/article/details/38684369


一类区间DP:

http://blog.csdn.net/willinglive/article/details/38621683

http://blog.csdn.net/willinglive/article/details/40739431

http://blog.csdn.net/willinglive/article/details/40739827


另一类区间DP:

http://blog.csdn.net/willinglive/article/details/38713097


经典DP:

http://blog.csdn.net/willinglive/article/details/38933477


一类矩阵上的DP:

http://blog.csdn.net/willinglive/article/details/39139331


一类调度问题:

http://blog.csdn.net/willinglive/article/details/39702845


一类树形DP:

http://blog.csdn.net/willinglive/article/details/38070555

http://blog.csdn.net/willinglive/article/details/40084341

http://blog.csdn.net/willinglive/article/details/40084475

http://blog.csdn.net/willinglive/article/details/40084779

http://blog.csdn.net/willinglive/article/details/38072491

http://blog.csdn.net/willinglive/article/details/39647117(最小支配集)

http://blog.csdn.net/willinglive/article/details/40506775

http://blog.csdn.net/willinglive/article/details/40580591


另一类树形DP:

难度1:

http://blog.csdn.net/willinglive/article/details/38666213(特殊的技巧)

难度2:

http://blog.csdn.net/willinglive/article/details/37773313(其实就是预处理复杂点其余没啥)


回文子串:

http://blog.csdn.net/willinglive/article/details/40381363


一类最大子图形:(以后研究)

http://www.docin.com/p-46970779.html


图论相关:

http://blog.csdn.net/willinglive/article/details/40381999

http://blog.csdn.net/willinglive/article/details/37936457


一类覆盖状压:

http://blog.csdn.net/willinglive/article/details/40406413

http://blog.csdn.net/willinglive/article/details/37937999

http://blog.csdn.net/willinglive/article/details/37938039

http://blog.csdn.net/willinglive/article/details/40406413

http://blog.csdn.net/willinglive/article/details/37960395

http://blog.csdn.net/willinglive/article/details/37960421


一类位运算状压:

http://blog.csdn.net/willinglive/article/details/40538247

http://blog.csdn.net/willinglive/article/details/40817431


概率DP:

http://blog.csdn.net/willinglive/article/details/38684905

http://blog.csdn.net/willinglive/article/details/40708853

http://blog.csdn.net/willinglive/article/details/40506965


非常规DP:

http://blog.csdn.net/willinglive/article/details/40746249


一类贪心有序化,然后DP:

http://blog.csdn.net/willinglive/article/details/38014855


数位DP:

http://blog.csdn.net/willinglive/article/details/37938149

http://blog.csdn.net/willinglive/article/details/37938187

http://blog.csdn.net/willinglive/article/details/37938217

http://blog.csdn.net/willinglive/article/details/37771013


神题:

http://blog.csdn.net/willinglive/article/details/40481719





http://blog.csdn.net/willinglive/article/details/38635047





T1、ACDream-EOF女神的打地鼠游戏

题目:http://acdream.info/onecontest/1022#problem-B

题解:http://acdream.info/topic/1451

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
DP Link Training(DisplayPort链路训练)是一种用于显示设备间连接和通信的协议,其目的是确保DP连接的稳定和正确工作。下面是DP Link Training的主要过程: 1. 检测和物理连接:在DP设备之间建立物理连接后,首先会进行握手和检测步骤,以确认连接是否正常。这包括检测有源/无源电缆、插头和连接器的状态。 2. 建立连接通道:一旦物理连接被确认,DP设备之间将开始建立连接通道。这涉及到双方进行协商,以确定最佳的链路速率和带宽支持。这样可以确保两个设备之间的数据传输速率能够匹配。 3. 链路训练和等化:在连接通道建立后,DP设备将进行链路训练和等化过程。链路训练是为了确定最佳的时钟和数据时序,以确保数据传输的准确性和稳定性。等化则是为了处理长距离传输时由于信号衰减引起的失真问题。 4. 验证和测试:在链路训练和等化完成后,DP设备将进行验证和测试步骤,以确保连接的正确性。这包括发送和接收一系列的测试模式和数据包,以检查链路的可靠性和工作状态。 5. 链路维持和错误处理:一旦链接成功建立并通过测试,DP设备将进行持续的链路维持操作,以确保连接的稳定性和可靠性。如果发现任何错误或异常情况,链路训练过程将重启并进行错误处理。 总结起来,DP Link Training是一个确保DP连接稳定和正确工作的过程,在物理连接之后,通过握手、建立连接通道、链路训练等步骤来协商和优化数据传输的速率和准确性。通过这个过程,DP设备能够有效地通信和工作。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值