Qoj 15502. 字符串问题
套路题。
考虑最小整周期不好刻画。但是一个串的所有整周期都是最小整周期的倍数,而整周期比较好做。
于是对 \(f\) 莫反,并计算所有整周期的贡献和。
段数为 \(1\) 是平凡的。
段数超过 \(1\) 是经典题优秀的拆分,枚举长度 \(len\),每 \(len\) 个节点插入一个哨兵,即可找出所有长度 \(\geq len\) 的连续段,然后直接算贡献。此处复杂度是调和级数的。
使用 SA 求 LCP 和 LCS。还需要对 \(f\) 莫反,总复杂度是 \(O(n \log n)\)。

浙公网安备 33010602011771号