摘要:
题不难。 A. Make All Equal 题意: 一个圆,上面有 \(n\) 个数,每次可以删去相邻的两个不同数中任意一个,求至少几次使得剩下的数都一样。 显然下界是出现次数最多的数且一定能取到,时间复杂度 \(O(n)\)。 提交记录 B. Generate Permutation 题意: 要 阅读全文
摘要:
1. 后缀数组 1.1 内容 我们将一个字符串 \(s\) 的所有后缀按照字典序从小到大排序得到数组 \(sa\),其中 \(sa_i\) 表示以 \(sa_i\) 开始的后缀排名是第 \(i\) 个。 这个数组就叫后缀数组(Suffix Array, SA)。考虑到长度各不相同,所以显然是个排列, 阅读全文
摘要:
1.KMP 自动机 1.1 内容 KMP 自动机本质上就是单串的 AC 自动机。 我们定义转移函数为: \[\delta(i, c) = \begin{cases} \delta(\pi_i, c)&s_{i+1} \not= c\\ i + 1&s_{i+1} = c \end{cases} \] 阅读全文
摘要:
1. 定义 一个字符串 \(S\) 被定义为 Lyndon Word 当且仅当其严格小于所有真 cyclic shift。 Lyndon Word 的等价定义:是其所有后缀中最小的。 2. 性质 性质 1: Lyndon Word 无 \(\text{Border}\)。 不妨设 \(w\) 有 \ 阅读全文
摘要:
1. KMP KMP 用来解决与字符串匹配相关的问题。 1.1 问题描述 我们当前有一个模式串 \(T\),我们希望找到所有 \(T\) 在母串 \(S\) 中的出现位置。 记 \(n = |S|, m = |T|\)。 1.2 Brute-Force 算法 我们考虑依次记录二元组 \((i,j)\ 阅读全文
摘要:
1. 常见定理 定理 1: 如果字符串 \(S\) 存在整周期 \(p\) \(\iff\) 存在 \(z\) 函数是的 \(z[i] = |S| - p\)。 定理 2: 如果字符串 \(S\) 分别以 \(p, q\) 为整周期,则 \(S\) 以 \(\gcd(p, q)\) 为整周期。 我们 阅读全文
摘要:
UOJ460 新年的拯救计划 \(n\) 点完全图。选出尽量多生成树。输出方案。 \(n\le1000\)。 考虑上界,总共有 \(\frac{n(n-1)}{2}\) 条边,也就是最多可以分成 \(\frac{n}{2}\) 棵树。 尝试证明这个上界可以达到。我们考虑归纳法,假设 \(n = 2k 阅读全文
摘要:
1. 定义 弦(chord): 对于一个点数大于等于 4 的简单环,连接环上不相邻两点的边称作弦。 弦图: 对于无向图 \(G\),如果其每个点数大于等于 4 的简单环都存在至少一条弦,则称这个图是弦图。 这个定义等价于:图 \(G\) 的任何诱导子图不是 \(K\) 阶环(\(K \ge 4\)) 阅读全文
摘要:
CF903G Yet Another Maxflow Problem 2700 关键点:最大流转最小割 显然我们需要用其他方式维护最大流,考虑到最大流等于最小割,于是我们去求最小割。 考虑这个图的特性不难发现左边和右边两列都至多割掉一条边,于是我们直接枚举割掉的位置,剩下的左边前缀和右边后缀所有相连 阅读全文
摘要:
*[ABC213G] Connectivity 2 2600 设 \(f(S)\) 表示连通子图为 \(S\) 的个数,\(g(S)\) 表示子图为 \(S\) 的个数。 \(g\) 很好求,我们最终的答案可以根据 \(f, g\) 得出,所以我们需要算 \(f\)。 考虑整体减空白,我们找一个点 阅读全文