五一集训笔记整理

五一集训笔记整理

0x01 DP-zky

换根DP

e.g. 给出一棵有n个点的树,求每个点到其他点之间的距离

把以一个点作为根节点的情况转移到另外的点作为根节点的情况

状压DP

有题

环形后效性处理

1.断环为链:记录或枚举第一个位置选择情况、复制一倍

2.整体处理 特殊讨论:tarjan、圆方树

3.最短路

斜率优化

把状态转移方程变形成\(y=kx+b\)的形式

数➡️形

根据单调性用单调队列处理

单调队列优化

倍增优化DP

倍增预处理优化一些过程

加速暴力

0x02 匹配与流-yjc

二分图与匹配

匈牙利算法

定理:当且仅当一个匹配是最大匹配时,没有增广路

  1. 最小点覆盖:选出一个点集,使得每条边至少有一个端点被选择

  2. 最小支配集:选出一个点集,使得每个点要么被选择,要么和被选择的点有边相连

  3. 补图:将原图任意两点之间有边的都删掉边,没边的都加上边

  4. 最小链覆盖=最长反链(最小链覆盖可以重复选点)

  5. 最大匹配=n-最小路径覆盖=n-最大独立集=n-最小边覆盖=最小点覆盖(最小路径覆盖不可以重复选点)

  6. 二分图的最大团=补图的最大独立集

  7. 最小链覆盖=传递闭包+最小路径覆盖

网络流

源点 汇点 容量 流 流函数 流量 剩余流量

流满足:

​ 1.容量限制

​ 2.反对称性

​ 3.流守恒性

最大流 最小费用最大流 最小割

FF(Ford-Fulkerson)算法

​ Dinic算法(\(O(n^2m)\))

​ 两种优化:多路增广、当前弧优化(\(O(nm)\))

​ Dinic跑二分图匹配复杂度为\(O(\sqrt nm)\)

posted @ 2021-05-05 19:21  wsy_jim  阅读(62)  评论(0编辑  收藏  举报