
各种DP
文章平均质量分 72
lovewangtaotao
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
2016多校集训---hdu5794
Lucas + dp 注意一个点: 如果是容斥肯定超时,但是容斥原理有一点,那就是无序性、、、比如2的倍数包含了3的倍数。3的倍数包含了2的倍数。所以用2^n来实现、、 而如果C = A ^ B , 且a 属于 A 也可能 属于B 。 但是 a属于B 就一定不会 属于A , 那就可以使用DP , 来加速容斥。。。。n^2 复杂度 。。贼强/。。。 比如此题: dp[i] 表示 第一个经过原创 2016-08-12 16:46:40 · 231 阅读 · 0 评论 -
2016多校总结---HDU5812distance
这个题目很巧妙。其实刚开始是没有任何想法的,但是仔细分析一下套路就会发现。其实是正常的套路。 首相,这是个询问类型的题。给你定义了一个函数d( x , y ) 为从x 到 y要乘或除的素数的最小个数。但是不可以0(n^2)肯定会超时(普遍的套路) ; 但是这个题目要抓住一个特殊的点。因为这个是集合操作,包括了insert和delete, 可以在insert和delete的同时维护什么东西。这原创 2016-08-11 11:06:55 · 318 阅读 · 0 评论 -
hdu3516 --- 四边形不等式优化
其实这一题还是没有完全证明,因为赵爽的了论文里面是w(i , j) 一定要是相同的,而对于这一题,其实转移方程和k的选择不同而w不同,但是运用四边形不等是因该也没错. 四边形不等是的实质就是解的单调性...很多时候都可以这样做.使用解的单调性或者是凸性来优化DP转移.#include #include #include #include #include #include #incl原创 2016-05-31 10:11:53 · 378 阅读 · 0 评论 -
动态规划---51nod 1055
#include #include #include #include #include #include #include #include #include #include #include #define inf 0x3f3f3f3f #define mem0(x , y) memset(x , y , sizeof(x)) #define ll long long原创 2016-05-26 21:53:12 · 577 阅读 · 0 评论 -
动态规划---51nod1371
这一题考察的是完全状态的获取能力:--->好题,回头一定要再复习一遍.主要是复习思想. DP状态的获得是由小状态通过找出后效型的问题关键然后再一步一步增加限制的.所以一开始的dp[i]很重要.往往先不出来的时候可以开绿一下是不是dp[i]的状态是否正确.注意细节-----C(n , 2) ; #include #include #include #include #in原创 2016-05-26 21:37:19 · 245 阅读 · 0 评论 -
poj1947 ----- 树形DP - 分组背包做法
题意 : 给你一个树 , 求出得到p个节点的子树所需要的最少的切割边数 。 思路 : 很明显的DP ,但是写起来 各种 烦 , 足足写了半天才改好 。 有一种左儿子右兄弟的DP方法看起来好像特别好想状态转移方程 。但是我习惯用常规的建图方法 和 DP 做法 : 状态 dp[rt][j] 表示以 rt 为根的(并且rt一定在子树上)的得到节点树为j的最小切割数 。 (注意 , 在树状DP原创 2015-11-08 11:24:44 · 338 阅读 · 0 评论 -
树形DP的一些总结
我是喜欢分析问题的人,并不是喜欢写代码的人 , 。。。。 同样,也只是写上一些简单的思路和心得 ; 树形DP就是在树上做的一个DP,由于树本来就是一个递归定义的东西 , 所以一般都是用DFS中维护一些信息传递给父节点 ; 基本步骤 : 1 . 转化为有根树 2. DP状态 3. 转移 1.hdu1520------入门树形DP ; 思路 :原创 2015-10-12 18:44:40 · 296 阅读 · 0 评论 -
leetcode 45 跳跃游戏II 详细题解+证明 0(n)方法
题意 给定一个数组(长度n),然后每个数组1个integer(1-k),每个数字表示可以往后走1-a[i]步,求最少多少步走到.输出一个整数表示多少布. 动态规划(0(n*k)) 第一个方法就是使用动态规划的方法来做,但是复杂度很大,而且是最简单的动态规划问题,因此这里不讨论. 贪心(0(n)) 考虑如何贪心,假如当前处于第i个位置,aia_iai是表示跳跃数,有p,q∈[i+1,i+ai]p ...原创 2019-03-04 20:51:11 · 460 阅读 · 0 评论