专栏文章
双模数结构、周期引理和同余最短路
算法·理论参与者 1已保存评论 0
文章操作
快速查看文章及其快照的属性,并进行相关操作。
- 当前评论
- 0 条
- 当前快照
- 1 份
- 快照标识符
- @minheour
- 此快照首次捕获于
- 2025/12/02 02:27 3 个月前
- 此快照最后确认于
- 2025/12/02 02:27 3 个月前
提示:本文和双模数 hash 没有关系。
双模数结构
给出正整数 和整数集 ,请你求出:,。
我们不关心这题的具体做法,只讲怎么刻画条件。怎么处理 和 同时出现的式子?
考虑固定 。对于 每个数建一个点,每个点 连边到 ,则可以证明:整张图是 个环,每个环环长为 。
通过这样的结构,我们可以把二维的双模数问题,转化为 下的一个环上问题。
WPL 与 PL
弱周期引理 WPL 和周期引理 PL 都是字符串题目中常见的套路。并且这篇文章后面的部分揭示了 PL / WPL 和双模数结构的强关联。
- 弱周期引理 Weak Periodicity Lemma (WPL): 和 是 的 period 且 ,则 也是 的 period。
- 周期引理 Periodicity Lemma (PL): 和 是 的 period 且 ,则 也是 的 period。
- 这个下界是紧的,无法继续加强, 再小就有反例了。
证明
像并查集一样,连边 和 。但是直接这么考虑不太行。
学习上面的思路,在 下看待这个问题,即我们合并所有 下相等的点。此时 的边天然成立了;剩余每条边形如 。
一开始有 个点,最后要连成 个连通块,至少要连 条边。我们已经证明过了最终是个环结构,因此每条边都不浪费(浪费的定义是,一条边连的两点早就连通了)。
我们连的最后一条边在原图上对应的是 。因此对于 PL,最小的字符串长度是 。这也说明了为什么这个界是紧的,因为更少的边根本没办法让连通块只剩 个。
PL 对应的图上,每个本应该是环的连通块事实上缺了一条边,每个连通块都是一条链。若再多花 条边,即字符串长度达到 时,每个连通块被补全成为完整的环。这也就是 WPL 对应的图。
双模数同余最短路
给定正整数 ,保证 且 。求不能被表示为 ()的最大正整数。
我们在 下看。连边 权值 。 号点到每个点 的单源最短路 ,即为 下所有可以拼出的数的最小值,比它大的 ()都可以拼出。
而根据前面的结论,这张图形成一个环,最远的点是走 步走到的点 ,最短路为 ,即这个同余类中可以表示出的最小值是 。
多模数同余最短路
多模数没有双模数的优秀性质了,建出的图很乱。
给定 ,求出 中有几个数可以被表示成 ()的形式。,。
在 下看,连边 边权 和 边权 。一样的最短路,使用 Dijkstra 在 的时间求解。
小技巧:由于 对称,选择一个最小的作为模数,可以减小常数。
In the state of Coinland, coins have values and cents. Suppose is the value in cents of the most expensive item in Coinland that cannot be purchased using these coins with exact change. What is ?
在 下看,连边 边权 和 边权 。模拟 Dijkstra 可以算出最长的最短路是 ,。
写在后面
- 文章完工了我才知道 CF1205E Expected Value Again 的题解区有我刚才构造的关于 PL 的所有东西。哈哈哈。
练习题
相关推荐
评论
共 0 条评论,欢迎与作者交流。
正在加载评论...