摘要:
1. 前言 树链剖分,是一种树上的算法,将树划分为若干条链,然后利用线段树来处理树上信息。 在学树链剖分之前,你需要了解的知识: 树的基础操作以及 DFS 序。 线段树的基础操作。 没有学过?可以看一看我的这篇博文:数据结构专题-学习笔记:线段树 倍增求解 LCA 的思路(代码不要求实现)。 没有学 阅读全文
摘要:
这道题是道套路不太一般的数位 DP。 首先根据小学奥数知识我们可以得知:所有石子合并到最中间一定是最优的,然而这并没有什么用,也不知道什么在中间。 那么我们先思考一个问题:假设当前合并点为 \(tag\),当我们将合并点更新为 \(tag+1\) 时,记 \(tag+1\) 时的答案为 \(ans_ 阅读全文
摘要:
一些 update update on 2021/7/19:发现第二道题目的代码贴错了,现已更正。 1. 前言 本篇博文是状压 DP 的练习题博文。 没有学过状压 DP? 传送门:DP专题-学习笔记:状态压缩 DP 状压 DP 非常之灵活,这里选了 3 道经典题。 更多的题目?请前往洛谷用户 @St 阅读全文
摘要:
1. 前言 状态压缩 DP,简称状压 DP,是一种 DP (废话)。 这种 DP 的特点就是通常与二进制有关(当然也可能是其他进制),通常复杂度为 2 的阶乘次级别。 状压 DP 的问题有两个鲜明的特征: 问题的数据规模特别小,2 的阶乘次可以通过。 题目通常都是选与不选两种选择,可以使用二进制串表 阅读全文
摘要:
1. 前言 本篇博文是树形 DP 的练习题。 没有学过树形 DP? 传送门:DP专题-学习笔记:树形 DP 树形 DP 的题目一般是比较容易看出来的 (树难道还看不出来吗),其唯一难点在转移方程上。 2. 练习题 题单: P2585 [ZJOI2006]三色二叉树 P4516 [JSOI2018]潜 阅读全文
摘要:
特别提醒:本题卡空间。如果您的代码 MLE 了而且思路没有问题,请直接前往『关于卡空间』这一部分。 P.S. WA+MLE 不计入上述范围内。 思路讲解: 本题是一道树上统计类 DP。 前置知识:树形 DP。 对于这道题,首先设下两维状态 \(f[u][i]\),\(u\) 为节点编号,\(i\) 阅读全文
摘要:
1. 前言 树形 DP,是一种 DP (废话),专门用于树上的 DP。 这类 DP 因为其板子好记,标记显眼而十分易懂。 而且树形 DP 长得就不像 DP,更像暴力搜索。 2. 详解 例题:P1352 没有上司的舞会 题目实际上就是给出一棵有 \(n\) 个点的树,选出一些点,使得这些点两两不相邻, 阅读全文
摘要:
1. 前言 本文为 DP 算法总结&专题训练1,专门记载概率/期望 DP 和数位 DP 的经典练习题及其详解。 没有学过这两种 DP? 传送门: DP专题-学习笔记:概率/期望 DP DP专题-学习笔记:数位 DP 接下来是题单。 2. 题单 概率/期望 DP: P1850 [NOIP2016 提高 阅读全文