下面记录一些待做的事情。 知识点: 1. 回文树,回文自动机 2. 位运算卷积(FWT,FMT,FST等等) 3. 生成函数 …… 每天计划: 1. 每天补一道之前做过的题的题解。 …… 不懈努力,静待奇迹 ...
分类:
其他好文 时间:
2020-02-11 18:58:23
阅读次数:
55
核心思想: 通过巧妙的设计使得我们能用一个DAG和树的复合结构来在线性复杂度内存储一个串的$n^2$个子串的信息。 定义: 1.后缀自动机的结构类似于AC自动机,每个点表示一个endpos等价类(子串结束位置的集合,以下简称为状态),边同AC自动机中的边。即后缀自动机上从根到一个点有若干条路径,这些 ...
分类:
其他好文 时间:
2020-02-10 22:47:35
阅读次数:
84
第一次写这个题是好长时间以前了,然后没调出来. 本来以为是思路错了,结果今天看题解发现思路没错,但是好多代码细节需要注意. code: #include <cstdio> #include <vector> #include <map> #include <cstring> #include <al ...
分类:
其他好文 时间:
2020-02-09 16:50:44
阅读次数:
83
「JSOI2012」玄武密码 "传送门" 题目是要求多个串在母串上的最长匹配长度。 考虑 $\text{AC}$ 自动机,我们建出 $\text{Trie}$ 图然后用母串来在上面跑。 每一个能匹配的位置,它 $\text{fail}$ 的位置也一定可以匹配,我们就跳 $\text{fail}$ 把 ...
分类:
Web程序 时间:
2020-02-08 15:28:02
阅读次数:
83
P3804 【模板】后缀自动机 (SAM) #include<bits/stdc++.h> using namespace std; const int N=2e6+100; typedef long long ll; char s[N]; int ch[N*2][26],len[N*2],fa[N ...
分类:
其他好文 时间:
2020-02-07 20:56:24
阅读次数:
65
目录 0 前导知识 0.1 1 哈希 1.1 哈希入门 1.2 哈希冲突 1.3 双哈希 2 KMP 基本原理 next数组 代码实现 3 Trie 4 自动机 4.1 Manecher 4.2 序列自动机 4.3 AC自动机 ...
分类:
其他好文 时间:
2020-02-06 20:07:38
阅读次数:
52
目录 贪心 搜索 数据结构 栈 队列 优先队列 map vector 树状数组 线段树 其他 bitset 字符串 KMP Trie树 Manecher AC自动机 序列自动机 后缀数组 数论 因数 最小公倍数,最大公因数 质因数 质数 质数判断 质数筛法 快速幂 逆元 中国剩余定理 扩展欧几里得 ...
分类:
其他好文 时间:
2020-02-06 19:37:23
阅读次数:
130
「SCOI2012」喵星球上的点名 填一个很久以前用 $\texttt{AC}$ 自动机没填上的坑。 关于本题,能够通过本题的算法很多,这里作者采用的是后缀数组+树状数组的做法。 首先有一个显然的结论:若 $s_2$ 是 $s_1$ 的子串,则 $s_1$ 一定存在一个后缀与 $s_2$ 的最长公共 ...
分类:
其他好文 时间:
2020-02-06 16:39:23
阅读次数:
72
模板格式如下。for(int i=n; i>0; i--) { for(int j=1; j<=26; j++) nex[i-1][j-'a'] = nex[i][j-'a']; //26是假定字符集为小写字母 nex[i-1][s[i]-'a'] = i; } ...
分类:
其他好文 时间:
2020-02-06 14:55:34
阅读次数:
55
题:https://ac.nowcoder.com/acm/contest/4010/K 题意:用一些模式串凑成一个目标串,每个模式串有消耗,问组合的最小消耗,或不能组成输出-1; 分析:典型的AC自动机处理后在跳fail的过程中进行操作,这里操作就是dp计算最小。用dp[i]表示长串前ii位的最小 ...
分类:
其他好文 时间:
2020-02-04 00:46:26
阅读次数:
65