2022.7.31 闲话
偷偷更新了一波知识落差限制想象力(link,密码是学校提高 OJ 的 IP),哈哈 .
完了闲话没题材了,水一波吧 .
字符串匹配 Part I
Problem 1
给两个字符串 \(s_1\),\(s_2\),求 \(s_2\) 在 \(s_1\) 中所有出现的位置 .
KMP 板子
Problem 2
给一个文本串 \(S\) 和 \(n\) 个模式串 \(T_{1 \dots n}\),请你分别求出每个模式串 \(T_i\) 在 \(S\) 中出现的次数 .
AC 自动机板子(fail 树上子树大小).
Exercise 1
维护一棵树 \(\mathcal T\),每个点 \(u\) 上挂着一个字符串 \(s_u\) .
令 \(\displaystyle S(u)=\sum_{v\in\operatorname{subtree}(u)}s_v\),多次询问,每次给出一个点 \(u\) 和一个串串 \(S_0\),询问 \(S(u)\) 中所有字符串在 \(S_0\) 中的出现次数之和 .
强制在线 .
Exercise 2
令 \(S_0=\varnothing\),要求支持以下操作:
1 hoc s
,令 \(S_i=S_{hoc}\cup\{s\}\),其中 \(s\) 是字符串(保证操作前 \(s\notin S_{hoc}\)) .2 hoc s
,令 \(S_i=S_{hoc}\),并查询 \(S_i\) 中的所有字符串在给出的字符串 \(s\) 中出现的次数之和 .
Problem 3
给出文本串 \(s\),两种操作:
- 单点修改
- 给一个区间 \([l,r]\) 和一个串串 \(t\),求 \(t\) 在 \(s[l:r]\) 中出现了多少次 .
可以分块 SAM,根分,或者 bitset 艹过去 .
Problem 4
给一个带通配符
*
,?
的字符串,多次给出字符串,问是否能匹配 .
平凡 DP,然后 Hash / ACAM 维护 .
映射表:
- Problem 1:洛谷 P3375
- Problem 2:洛谷 P5357
- Exercise 1:[URA] AC Automaton on Tree(知识落差限制想象力)
- Exercise 2:洛谷 P8451
- Problem 3:CF914F
- Problem 4:P3167
因为要补模拟赛 T2 所以这里先写一部分 .
以下是博客签名,正文无关
本文来自博客园,作者:Jijidawang,转载请注明原文链接:https://www.cnblogs.com/CDOI-24374/p/16538352.html
版权声明:本作品采用「署名-非商业性使用-相同方式共享 4.0 国际」许可协议(CC BY-NC-SA 4.0)进行许可。看完如果觉得有用请点个赞吧 QwQ