随笔分类 -  字符串

摘要:P10272 P7525 加强版。 思路 分类讨论。如果 \(S\) 存在一个周期,设最小周期长为 \(len\)。那么第 \(i\) 次操作是在 \(i-1\)长度上加 \((n-len)\times 2^i\)。用字符串哈希判断是否存在长为 \(i\) 的周期,只需要判断 \(s[1,n-i]= 阅读全文
posted @ 2024-05-10 20:09 yhddd 阅读(6) 评论(0) 推荐(0) 编辑
摘要:1.基本 SAM 能表示某个字符串的所有子串,且正好是所有子串。 int len[maxn],lnk[maxn]; int a[maxn][26]; int p=1,cur=1; int ed[maxn]; void insert(int c){ int nd=++cur; len[nd]=len[ 阅读全文
posted @ 2024-05-10 20:08 yhddd 阅读(14) 评论(0) 推荐(0) 编辑
摘要:P3538 [POI2012]OKR-A Horrible Poem 思路 先暴力。对于每个询问,用 \(O(\sqrt{len})\) 枚举区间长度 \(len\) 的因数 \(i\),再一个一个位置比较两个字符串 \(\frac{len}{i}\) 次判断。复杂度 \(O(qn\sqrt n)\ 阅读全文
posted @ 2024-05-10 20:03 yhddd 阅读(6) 评论(0) 推荐(0) 编辑
摘要:CF1286E 思路 维护当前 border 集合和答案。从 \(i-1\) 的合法集合过来。对于集合中的区间 \([1,x]\),如果 \(s_{x+1}\ne s_i\) 则删去,否则拓展为 \([1,x+1]\)。如果 \(s_i=s_1\) 则加入 \([1,1]\)。一共最多 \(O(n) 阅读全文
posted @ 2024-05-10 19:52 yhddd 阅读(11) 评论(0) 推荐(0) 编辑
摘要:arc119f 自动机写法。开始在做的时候题解没讲每个节点代表什么状态,自己推了一遍,记录一下。 思路 计数,求有多少种替换方式使得 $0$ 到 $n$ 存在一条长度小于等于 $K$ 的路径。 可以做 $O(n^3)$ 的 dp。设 $dp_{i,a,b}$ 表示前 $i$ 个位置,最近的 $A$ 阅读全文
posted @ 2024-05-08 18:15 yhddd 阅读(13) 评论(0) 推荐(0) 编辑
摘要:abc238g 思路 莫队 $O(n\sqrt n\log a_i)$。 哈希。 把 $a_i$ 质因数分解,指数模 $3$。直接乘过大,考虑哈希。每个质数的指数和都因为 $3$ 的倍数。 即:所有数的出现次数和是否都为 $k$ 的倍数。 法一:前缀和。给每个质数随机 $val_i$,$a_i=\s 阅读全文
posted @ 2024-05-08 18:14 yhddd 阅读(13) 评论(0) 推荐(0) 编辑