9.1

arc108e

当已经选了 时, 与外面无关。区间 dp,。维护 转移。

9.2

P5188

模拟赛 T2。

容斥强行不选 这些材料,矩阵快速幂。

CF1949H

模拟赛 T3。

按对角线向后推,计算经过次数。不能经过 次。经过次数形如 。维护两个 的位置 或是不是状态 2。如果 被禁止,去到状态 2,否则如果有 的位置被禁止则无解。如果 有被禁止,每次 的区间 会增加 ,否则 会缩短 个对角线后结束。

P10998

排序,对于每个 进行三元组计数。

条边的三元组计数 。如果 ,有 ,复杂度 。否则 至多 个,复杂度

P4843

有源汇上下界最小流,建超级源汇点补齐流量,跑最大流,从汇点向源点连容量 ,再跑最大流。答案为汇点到源点的流量。

P4043

最小费用可行流,建超级源汇点补齐流量,费用加上下界流量乘代价,从汇点向源点连容量 代价 的边。费用加上超级源汇点的最小费用最大流。

CF1288F

将边 拆为 ,分别表示红边或蓝边,都不流就不染色。左边的红点的右边的蓝点流出大于流入,连 ,反之连 。最小费用可行流。如果超级源点出边满流则合法。

9.3

P9338

要求前缀和时刻大于零。设 为第 个 A 前有多少个 B,,外层 wqs 二分。拆开 max,预处理 为最小的位置使得 ,内层 ,斜率优化。

CF2006E

等价于度数 的点到其余点的距离最大值。动态维护直径,每次中心偏移 ,dfn 序上子树加,全局 min。度数 就不贡献,度数 无解。

Q9123

升序排序,二分答案 。对于每个 可以 计算 的答案。设阈值 ,前 个的贡献 计算。如果没超过 贡献 。后边只需要前 小的 对, 预处理加 计算。

Q5095

模拟赛 T3。

最优策略决策为从下往上每个人删掉存在的最劣的数。 模拟,开始点下移时每个人的决策点单调,复杂度

9.4

模拟赛 T4

按值从小往大 dp,枚举笛卡尔树子树内哪个位置不被确定。保证数据随机,笛卡尔树深度 ,只用以 为底的幂, 预处理 查询。

P9850

容斥,设 为至少 条红边的方案,蓝色四元完全子图的数量为 ,红色四元完全子图的数量为。分类讨论,三/四元环计数。

P7386

将一个 捆绑起来。设有 。最后一层 的贡献为 。对于一个 ,枚举上面有 ,有 种可能,即有 个这样的 同理,算作一个大小为 的点。要求形如 。有 。所以 。lucas 定理计算。

9.5

gym102428J

模拟赛 T3

初始在 ,先向左走,令 ,若 ,答案为 中第一个 的位置;否则为 中最后一个 的位置。线段树上二分。

Q7899

模拟赛 T4。

分治。记 合法等价于 ,即 ,按 排序,树状数组维护 。正反做一遍得到划分 的答案 和划分 的答案

分治维护修改的变化量。当某个 改为 时,对于分治区间 ,当 是,区间 值发生变化,合法的 发生变化,重新计算 ,和原先应当贡献的 做差。·

9.6

arc165f

模拟赛 T4。

如果 前,跑字典序最小的拓扑序。主席树优化建图,优先拓扑主席树点,优先队列拓扑。

9.9

P7230

模拟赛 T4。

对每个左端点维护右端点 。操作形如删去一个数再加入一个数。如果删掉 上的 ,找到左右最近的 使得 。那么 取 max。实际上要维护 ,因为 单调,所以相当于线段树上二分找到最左的小于 的位置然后区间覆盖。

删除好做,加入难做,考虑线段树分治。先把所有的时刻的 都当作存在,右移右端点维护出所有 。 multiset 维护每个值出现的位置来求 。进入一个区间后进行删除操作。撤销操作记录下所有修改和下传的位置和值。

P4617

先手胜当且仅当 一定在最大匹配上。找出一个最大流, 一定在最大匹配上当且仅当 被选且残量网络缩点后 不在同一强连通分量。

9.10

模拟赛 T2

去掉头尾相等的。枚举回文中心 ,取最长回文串 ,求最大 使得 。等价于反串和自己匹配,kmp。翻转再做一遍。

CF1149D

模拟赛 T3。

边构成若干连通块,合法 边跨过两个连通块。不能走 边离开一个连通块再走 边返回,,只有 的连通块有用,状压,最短路,

9.11

P6684

模拟赛 T4。

等价对于每个 求最小的 使得 的边能组成奇环。将边复制一遍接在后面,即对于每个 求最小的 使得 间的边组成奇环。 有单调性。依次求每个 ,每次右移 ,加入的这条边 会在求 时都有贡献。插入容易删除困难,用线段树分治。初始没有边,分治到 时会对之后一个区间加入若干条边,一共加边 次。

P7307

答案为最大度数。允许误差,每次将边集一分为二。希望将每个点度数除以 上取整,在左右部点各建一个虚点,将度数补齐为全是偶数,存在欧拉回路,将相邻的边分开得到两个边集,分别递归。 轮后 ,将此时边集中的点染成一种颜色。

ucup 记录

9.12

joisc2017e

三进制拆分,,如果 被影响就不选。两边用同个随机排列来遍历数组,并尽量利用坏段。

Q9237

先补一个 ,在一直补 。还原时把最后一个 以后扔掉。有 个有效位,要用 位说明哪些位置被控制。令 后最近的 ,前 条信息第 位为 ,第 条信息第 位为 。还原时可以建图,找 个点的内向基环树的长为 的环,是唯一的。

agc034e

,每步 减小 最优。维护 表示最多最少能将 子树内 变为多少。讨论最大的子树是否大于一半。

arc110e

用异或表示。令 不变。设 为划分 的方案,枚举最后一个字符是什么。

P6790

广义串并联图。删 度点,缩 度点,叠合重边。记 为第 条边在生成树上的方案数, 为不在的方案数。删一度点, 乘进答案;缩 度点,;叠合重边,

9.13

模拟赛 T4

建 trie 树。先假设全选 ,计算答案与 的差值。按 dfn 序转移,设 为上一个单词在 的答案,。李超线段树维护转移。

9.14

abc308h

枚举连向环外的点 。在挖掉 的子图中求全源最短路,答案为 。线段树分治,加入点时进行松弛操作。复杂度

9.15

模拟赛 T4

Boruvka 算法。每次对于每个连通块找到最小的到连通块外的边,全部连起来。每次连通块数量减半。将矩阵加对对角线翻转,扫描线找到每个 的最小边。线段树分别维护最小值和连通块不同的次小值。

9.16

CF901D

模拟赛 T3。

找出一颗生成树,满足除了根以外的所有点。调整根,只有奇环有用。只要有一个奇环, 就可以减去 。因为保证 奇偶性相同,找一颗 bfs 的生成树即可。

9.18

Q8948

模拟赛 T3。

对于一个菊花,有 个黑色儿子, 个白色儿子, 当做 个黑; 当做 个白;否则若 为偶 Bob 要先走当做黑;否则当做白。

P10214

模拟赛 T4。

被投出时的票数, 较大者先出。 的儿子 影响 。对 按投出先后排序,二分一个前缀在 前被投出,即 。平衡树维护每个点的儿子,支持插入删除二分。

此时单点修改复杂度为 。重链剖分,求出 在轻儿子中二分的结果 ,若 ;否则在轻儿子中二分 为关于 的分段常函数,段数为 ,可以合并。线段树维护重链信息乘积,修改时改链顶父亲的轻儿子的平衡树,查询时从链底 dp 值加上区间信息求 dp 值。

9.19

CF1647F

模拟赛 T3。

假设一个最大值为左边峰顶。设 表示前缀 ,一个序列在 ,另一个序列最小在哪里。 为后缀。从左边峰顶到 枚举右边峰顶,设 表示当前左/右序列在 ,另一序列的最大最小值。

CF1494F

模拟赛 T4。

最后是菊花,枚举菊花中心 ,删去与 连边的奇度数点找欧拉路径。

9.23

CF1635F

模拟赛 T3。

枚举可能贡献的答案对的较大值,只有左右第一个比 小的 才有贡献。

CF1784F

模拟赛 T4。

被删除的连续段长度一定是偶数;不会删去 以后的数;第二段关于中心对称。

枚举第一段长度 ,枚举第二段在 左侧长为 。下指标关于 变换量为 。否则剩余长度 ,剩 次操作,

arc184b

对于不是 倍数的 ,将 中的 找出来,每次加入 ,有 级别宽的网格。状压 表示前 行已经选完,第 行选到 列,当前面上状态为 只有 级别,可过。

9.24

模拟赛 T4

扫描线维护编号较小的最大编号为 ,点边容斥强行选 ,主席树维护矩阵。交换 时重新做第 棵主席树即可。

9.25

【5校day1】构造题

从右上往左下确定每个点的颜色。对于点 最多有 个入边。如果不包含所以颜色,就赋没有出现的颜色。否则如果 通过 的连通块联通,那么 一定不通过 的连通块联通。

【5校day2】祖先

,答案为 。单点加为链加。类似动态 dp 维护轻儿子处的 。区间加单点查。子树加,先加上 到根的贡献,再打上子树 tag,维护 次方和。树剖时先进入重儿子,再去到每个儿子,再进入轻儿子子树。

9.26

joisc2020q

模拟赛 T4。

的最短路。边权赋在点上,一个点只入队一次。按 建线段树,取出合法的 并删除。

【5校day5】签到题

先二分出 ,令 。先将序列放 ,每次加一个 ,每次加一个 。次数为

9.27

模拟赛 T3

dij 状求答案,与除去 最短路相关。找出最短路树,非树边进行路径取 min。

模拟赛 T4

有决策单调性,二分栈,主席树维护前 大的和。统计答案,只有不交区间有贡献,区间对区间 大取 min,如果一个点最后的值小于自己的值就可以选。

9.29

模拟赛 T4

每个位置对答案的贡献为向下递归的层数。设 的数最后出现在 被断开的层为 的贡献为 。取到后面的为

上指标求和,最后只与 有关的式子。

9.30

CF1648F

模拟赛 T4。

建出 dfs 树,非树边赋随机权值,随机异或哈希。如果割两条树边,只能是 。相同的 都在到根的链上,且有决策单调性,对于每个相同权值放在序列上分治。两边 的答案为:跨过 的点对减跨过 的点对加两倍没有跨过 但跨过 的点对。后面的贡献在 dfs 序上维护主席树,在两点处 ,lca 处