国庆记录

DP

总

image

image

image

image

(下标、值域、区间长度、子树大小)

image

(即考虑后效性,后面计算需要用到的所有东西都记在下标上)

image

线性 dp & 子序列 dp

线性 dp:从前一个转移。

子序列 dp:可以看作线性 dp 的关键点优化。

image

image

例题

  • CF1144G:交替设计状态+对偶优化(当某一维具有单调性,且 dp 值域很小时,考虑将值放入状态下标,然后维护这一维的最大/最小值)。

  • CF813D:滚动数组+关键点优化(将线性 dp 优化为子序列 dp)+前缀优化(适用于求前面某个满足特定要求的决策点)。

区间 dp

区间 dp:特点是贡献拼接、转移顺序非线性。

image

Untitled

例题

  • CF1922F:利用上面的 trick。

树形 dp

image

  • 树形 dp:从小子树转移到大子树。

dp 优化

image

例题

  • CF1521D

状压 dp

trick:子集枚举、高维前缀和。

背包 dp

  • 背包 dp:\(n\) 选 \(k\) 模型。

计数

总

trick:

  • 总贡献问题:枚举贡献算方案(拆贡献)。

image

数据结构

总

image

image

image

image

image

image

image

image

image

例题

  • CF1982F:

题型:

  1. 最优化问题——贪心——由最优调整到合法(本题)或由合法调整到最优。

  2. 线段树维护信息——类似 dp,求什么设什么——思考 pushup 转移。

  • CF1858E2

题型:

  1. set 维护最值位置

  2. 栈维护回滚操作。

思想方法:

  1. 「将询问挂在一个点上」的思想。
  • CF1946F

题型:

  1. 区间约束 dp——定义二维状态&树状数组+扫描线优化。
  • P3960

思想方法:

  1. 预处理思想。(把不好在线临时算的东西预处理)

  2. 延迟删除思想。

题型:

  1. 数据结构上二分维护前缀信息/第一个XX。

构造

总

image

例题

  • CF1519E

思想方法:

  1. 图论建模技巧——点边对偶(将点视作边)。

  2. 研究边集时——考虑生成树,分为树边和返祖边。

  • CF1697F

题型:

  1. 2-SAT 建边(3 个)——通常使用 \(x \le i\) 的形式、需要建立逆否命题边(即反向边)、拆点技巧(根据值域拆、拆成 true / false)

图论

总

image

image

难点2 :模拟图论算法。

示范:生成树

image

例题

  • CF977E

题型:

  1. 简单图论题:从度数入手。
  • CF1385E

题型:

  1. 定向问题:研究边集——考虑生成树(树边 & 非树边)
  • CF1473E

思想方法:

  1. 将 dijkstra 视作 dp,通过添加状态满足题目限制。

字符串

总

image

image

posted @ 2026-10-05 22:30  _KidA  阅读(7)  评论(0)    收藏  举报