![](https://img-blog.csdnimg.cn/20201014180756930.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
AC自动机
文章平均质量分 87
a_crazy_czy
日后,尽量别叫今天的泪白流。
展开
-
AC自动机学习小记
算法简介AC\mathrm{AC}自动机,英文Aho−Corasick automaton\mathrm{Aho-Corasick\ automaton}。1975年产生于贝尔实验室,是著名的多模式匹配算法之一。必备技能KMP\mathrm{KMP}算法,Trie\mathrm{Trie}(字典树)。算法分析AC\mathrm{AC}自动机其实就是将所有模式串放进一颗Trie\mathrm{Tri原创 2015-08-27 16:38:28 · 1601 阅读 · 2 评论 -
[SDOI2014][JZOJ3624]数数
题目大意求不大于NN的正整数中,看作字符串(不包含前缀00)后,没有子串属于给定字符串集SS的数的个数。 1≤N<101200,|S|≤100,∑s∈S|s|≤15001\le N<10^{1200},|S|\le100,\sum_{s\in S}|s|\le1500题目分析不大于某个数,然后对于数字的某些位有特殊要求,这是经典的数位dp模型。 那如何解决子串的约束条件呢?可以发现约束条件相当于原创 2016-01-02 17:56:08 · 834 阅读 · 0 评论 -
[NOI2011][JZOJ2784]阿狸的打字机
题目描述有一个缓存槽,设计一个程序维护下面三个操作: ∙insert c\bullet insert\ c:在缓存槽末尾插入小写字符cc ∙print\bullet print:将缓存所有字符连接输出为字符串 ∙delete\bullet delete:删除缓存槽最后一个字符 操作总共有nn个。 在所有操作结束之后,要支持mm个询问。每个询问都是查询第xx次输出的字符串在第yy次输出的字符原创 2016-01-27 19:21:35 · 1008 阅读 · 0 评论 -
[SCOI2016][JZOJ4631]背单词
题目大意题目分析题意差评。 显然最优解下,第一种情况我们显然不会让它发生。 如果我们将字符串之间的后缀关系连成一棵树,那么可以发现此题相当于给树分配一种序列,满足祖先必须在儿子之前,并且儿子与父亲位置差之和最小。 我们可以将所有串反过来构造一棵TrieTrie解决连边问题(然而弱智的我考场上敲了个AC\mathrm{AC}自动机,用failfail树乱搞)。 考虑贪心策略,这题让我想到了小学原创 2016-07-15 19:12:57 · 654 阅读 · 0 评论