LCA笔记随性摘录5

hash 专题。

多项式哈希:\(\dots ax^2+bx+c \pmod p\),最经典的哈希。最好每个字符随机映射,取的 \(x\) 最好是 \(p\)\(O(p)\) 级别原根。

集合哈希:和哈希,异或哈希。

流哈希:线性空间哈希。具体见 QOJ61。

自由群哈希:字串替换,定义一些等价关系,使得你可以将任意字串替换为其等价类内的其他字串。注意到其与结合律形式类似,因此将“字符串”看作“每个字符代表的函数”逐步复合。
举例:\(P_a(x)=ax\)
太难了,这里只讲一个消消乐:用置换群表达自由群,规则有 \(aa=\epsilon,bb=\epsilon,\dots\) 其中 \(\epsilon\) 表示空字符串,则只需构造每个字符的排列为:有 \(B\) 个点,随机找一个匹配,然后把匹配的两个点连成二元环。这样就满足每个字符的阶都是 2。

二分哈希(单点改,求两位置 LCP)目前复杂度只能做到 \(O(\log^2 n)\)


翻转的刻画:将翻转后的串隔位叠起来会形成回文串。


一个回文串的回文后缀必然是 border,自然也满足 border 有关的性质。


代数专题先跳过,因为感觉不太说人话。


dp 转移优化:先得到一个 dp,再枚举状态的子集,若关键点保留后转移仍然简洁,则可行。最后去除到达不了的状态。

状态优化:扫描、压缩信息、性质、顺序。


MST 和最小生成基环树的关系:直接加一条最小非树边。


MST 常用分析套路:给每条边加一个随机无穷小使边权互不相等。


组合意义:只能向右或向上,从某个点走到某个矩形停下的方案数可以看作其到右边一列的方案数,再变成到一个点的方案数。

神秘 trick:\(C^{a_i+a_j}_ {a_i+a_j+b_i+b_j}\) 可以看作 \((-a_i,-b_i)\)\((a_j,b_j)\) 的方案数。


卷积,半格和对角化相关:完全没懂,需要看回放。


括号匹配:未匹配的位置是前缀 min 和后缀 min,单点插入/删除 \(\pm 1\) 对于这个信息的变化量是 \(O(1)\) 的。
单点修改总是能看作先单点删除再单点插入。


单位根反演:\([m \mod n=k]=[n|(m-k)]=\frac{1}{n}\sum_{i=0}^{n-1} \omega_{n}^{i(m-k)}\)

\[\lfloor\frac{i}{k}\rfloor =\sum_{j=0}^{i} [k|j] -1 \]


DP 合集
对于 DP,有两种思维方式:“状态”和“子问题”。

DP 状态:把“已考虑部分”按照“对未考虑部分的影响”划分等价类。类似扫描线,你总是能找到已考虑和未考虑部分的分界线及其扫描顺序。
运动类问题的子问题是向后走一步。
段不易压缩,但段可扩张。
任意 DP 都有正与倒两种顺序。(转置/时间反演)

转置原理在 max 上的作用:反转计算方向,原本计算从起点到本状态的最优解,转置后计算本状态之后可走的最优解。

最大前缀和:倒算比正算更简单。

子问题思想:更加关注“合并方式”,从大的问题拆散成更小的子问题。
倍增的两种形式:拼在一起(111222),插在一起(121212)。

二者缺陷:没有跨层转移能力。
子问题缺陷:没有一对多转移能力。
有多对一转移,无跨层转移,无一对多转移。

CF1060F 我不会,感觉看懂了题解也领悟不到其中的深刻含义。


序列 \(a_i=popcount(i) \mod 2\) 可以倍增构建,每次翻倍将后半段异或 1 即可。


DP 可以先设一个指数级状态,然后利用乘法分配律将贡献系数相同的尝试一起算,并考虑怎样的信息足以计算系数。

分步转移:\(|a-b|=\max(a-b,b-a)\)彩灯晚会题解

  • 两两曼哈顿距离之和:贡献系数取决于最终的排名。
  • P7648 分步决策,注意到每两次射门之间转移独立,因此分开计算再背包。
  • P9111 提前决策,可以预先声称未来的情况,然后转移的时候在收回你的声称。
  • CF814E //不会。

图论合集

一般图不易处理则考虑取其生成树。(BFS树,MST,最短路树,DFS树)

欧拉回路。//题很多,也很深奥。

二分图匹配染色:如果是正则图必定有解。

网格图建模成“行列为点”的二分图。

图论中边的实质:体现二者关系的就是边。

外平面图:三角剖分图的子图,具有非常优良的性质,很多一般图上指数级的算法在这个图上可以得到多项式。大部分树上算法可以迁移(因为这个图的补图是森林)。
详情可见gpt聊天链接

图论的基本思路:探究简单的结构,然后自底向上缩。


计数基本方向:

  1. 递推/递归(dp)
  2. 所有合法方案的整体结构(置换群)
  3. 表示法(生成函数,prufer 序列等)

限制如果体现为某些位置小于等于,某些位置大于等于,则可以使用容斥处理。
经典例题:AGC036F
条件:最大 \(L<\) 最小 \(R\),且 \(L,R\) 都有单调性。

容斥系数汇总:子集,二项式,点减边,前缀和/子树和。
计数由两个长为 \(n\) 的序列归并可以生成的序列是无多项式复杂度做法的。

01串问题如果操作同时关联相邻两个数,则反转奇数位置有奇效。

子集哈希:一个元素随一个向量,向量和后,如果每一维都更大则认为是子集,否则必然不是子集。
维数选择大约是 \(2^{|S|-|T|+O(1)}\) 维。


最后一课。

乱搞:最优化相关情况下,只记录前若干优。

打表:等价类、独立性、等差、等比、有值的位置、值域、同值的形状、不同值个数...


结营了。走散了。

posted @ 2026-05-14 15:17  murder_drones  阅读(7)  评论(0)    收藏  举报