
后缀自动机
WA_King
这个作者很懒,什么都没留下…
展开
-
生成魔咒-SDOI
题目 题目链接 内容 对于原串的每个前缀,求有多少个不同的子串. 后缀数组 对于长度为nnn 的串,子串个数为 n∗(n−1)2−∑i=1nheight[i]\frac{n*(n-1)}{2}-\sum_{i=1}^n height[i]2n∗(n−1)−∑i=1nheight[i] 把字符串翻转,从前往后插入字符,用set查询插入字符的前一个字符pre和后一个字符next ans[i]=a...原创 2020-01-27 14:06:33 · 221 阅读 · 0 评论 -
卡拉巴什的字符串(后缀自动机)
题目 题目链接 分析 在sam中,两个后缀的lcp等于这两个节点在parent树上lca所对应的节点的maxlen, 因此如果一个节点儿子节点,那么这个节点的maxlen就会成为某两个节点的lcp. 我们动态的插入节点,每新建一个节点就把该节点的父亲节点对应的maxlen设为出现过. 注意此题需要特殊判断输出为0的情况. #include <bits/stdc++.h> using ...原创 2020-01-24 21:13:25 · 276 阅读 · 0 评论