「学习笔记」AC 自动机】的更多相关文章

「学习笔记」Min25筛 前言 周指导今天模拟赛五分钟秒第一题,十分钟说第二题是 \(\text{Min25}​\) 筛板子题,要不是第三题出题人数据范围给错了,周指导十五分钟就 \(\text{AK}​\) 了,为了向 \(\text{AK}​\)王 学习,真诚的膜拜他,接受红太阳的指导,下午就学习了一下 \(\text{Min25}​\) 筛. 简介 如果 \(f(n)\) 是一个积性函数,且 \(f(n)\) 是一个关于 \(n\) 的简单多项式,并可以快速算出 \(f(p^k),\ p\…
目录 「学习笔记」FFT 之优化--NTT 前言 引入 快速数论变换--NTT 一些引申问题及解决方法 三模数 NTT 拆系数 FFT (MTT) 「学习笔记」FFT 之优化--NTT 前言 \(NTT\) 在某种意义上说,应该属于 \(FFT\) 的一种优化. --因而必备知识肯定要有 \(FFT\) 啦... 如果不知道 \(FFT\) 的大佬可以走这里 引入 在 \(FFT\) 中,为了能计算单位原根 \(\omega\) ,我们使用了 \(\text{C++}\) 的 math 库中的…
目录 「学习笔记」FFT 快速傅里叶变换 啥是 FFT 呀?它可以干什么? 必备芝士 点值表示 复数 傅立叶正变换 傅里叶逆变换 FFT 的代码实现 还会有的 NTT 和三模数 NTT... 「学习笔记」FFT 快速傅里叶变换 几个星期之后,继 扩展欧拉定理 之后, \(lj\) 大佬又给我们来了一发数论... 虽然听得心态爆炸, 但是还好的是没有 \(ymx\) 大佬的飞机开得好... 至少我还没有坐飞机... 啥是 FFT 呀?它可以干什么? 首先,你需要知道 矩阵乘法 的相关知识. 通过…
「学习笔记」Treap 前言 什么是 Treap ? 二叉搜索树 (Binary Search Tree/Binary Sort Tree/BST) 基础定义 查找元素 插入元素 删除元素 查找后继 平衡性问题讨论 经典例题 堆 (Heap) 查询操作 插入操作 删除操作 随机二叉查找树 (Treap) 基础定义 Treap 维护平衡的原理--旋转操作 插入操作 删除操作 其他操作 调试技巧 前言 HuaQiMoAo 大佬 GuoShaoYang 大佬 且部分图片可能来源于这两位大佬. 本人太菜…
「学习笔记」字符串基础:Hash,KMP与Trie 点击查看目录 目录 「学习笔记」字符串基础:Hash,KMP与Trie Hash 算法 代码 KMP 算法 前置知识:\(\text{Border}\) 思路 代码 \(\text{KMP}\) 匹配 思路 代码 Trie 数据结构 01-Trie 代码 练习题 Hash Bovine Genomics 思路 代码 [TJOI2018]碱基序列 思路 代码 [CQOI2014]通配符匹配 [NOI2017] 蚯蚓排队 思路 代码 KMP See…
「学习笔记」平衡树基础:Splay 和 Treap 点击查看目录 目录 「学习笔记」平衡树基础:Splay 和 Treap 知识点 平衡树概述 Splay 旋转操作 Splay 操作 插入 \(x\) 查询排名为 \(k\) 的数 查询 \(x\) 的排名 查询 \(x\) 的前驱 查询 \(x\) 的后继 删除 \(x\) 代码 替罪羊树 Treap FHQ_Treap 树套树 平衡树的区间操作 例题 P3391 文艺平衡树 思路 P4036 [JSOI2008]火星人 思路 P4309 [T…
目录 写在前面 定义 引入 构造 暴力 字典图优化 匹配 在线 离线 复杂度 完整代码 例题 P3796 [模板]AC 自动机(加强版) P3808 [模板]AC 自动机(简单版) 「JSOI2007」文本生成器 「BJOI2019」奥术神杖 「SDOI2014」数数 「NOI2011」阿狸的打字机 写在最后 写在前面 这篇文章的主体是在没网的悲惨状况下完成的. 前置知识:Trie 树,DFA,KMP 字符串匹配算法. 请务必深刻理解! 定义 \(|\sum|\):字符集大小,在大多数题目中都等…
自动AC机 Keywords Research 板子题,同luoguP3808,不过是多测. 然后多测不清空,\(MLE\)两行泪. 板子放一下 #include<bits/stdc++.h> using namespace std; #define ll int #define ull unsigned long long #define ZZ_zuozhe int main() #define S 1000010 ll n; char tmp[S]; ll vcn=0; struct ve…
[学习笔记]wqs二分/DP凸优化 从一个经典问题谈起: 有一个长度为 \(n\) 的序列 \(a\),要求找出恰好 \(k\) 个不相交的连续子序列,使得这 \(k\) 个序列的和最大 \(1 \leq k \leq n \leq 10^5, -10^9 \leq a_i \leq 10^9\) 先假装都会 \(1 \leq k \leq n \leq 1000\) 的 \(dp\) 做法以及 \(k = 1\) 的子问题 实际上这个问题还可以是个费用流模型: 对于序列中每一个点 \(i\)…
AC自动机 前置知识: 字典树:可以参考我的另一篇文章 算法学习笔记(15): Trie(字典树) KMP:可以参考 KMP - Ricky2007,但是不理解KMP算法并不会对这个算法的理解产生影响. 目录 AC自动机 使用场景 算法思想与流程 匹配的判断 失配树的应用 对状态的理解 使用场景 AC自动机是一种著名的多模式匹配算法. 可以完成类似于KMP算法的工作,但是由单字符串的匹配变成了多字符串的匹配. 一般来说,会有很多子串,和一个母串.问题常是求字串在母串中的出现情况(包括位置,次数,…