
AC自动机
xjsong99
OI -> ACM -> AI
展开
-
AC自动机算法详解 (转载)
写的不错的一篇博客: https://www.cnblogs.com/cmmdc/p/7337611.html转载 2018-08-09 17:23:35 · 220 阅读 · 0 评论 -
HDU2222 Keywords Search (AC自动机)
题目:http://acm.hdu.edu.cn/showproblem.php?pid=2222分析: AC自动机模板题代码:#include <bits/stdc++.h>using namespace std;typedef long long ll;const int tmax=10005*30;const int tmax2=1e6+5;int n...原创 2018-08-09 20:07:15 · 128 阅读 · 0 评论 -
UVA11019 Matrix Matcher (二维AC自动机)
题目:https://vjudge.net/problem/UVA-11019题意: 给一个 n*m大矩阵,一个 x*y小矩阵; 求小矩阵在大矩阵中出现次数。分析: 将小矩阵按行插入Trie树中; 结尾标记val为行号; 注意有可能多行对应一个节点,因此val应为vector; find()大矩阵中每行,若出现匹配,则标记这次匹配对应的小矩阵右上角出现的位置; 若一个位置被标...原创 2018-08-10 10:36:42 · 247 阅读 · 0 评论 -
ZOJ 3228. Searching the String (AC自动机)
题目: http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemId=3441题意:给定一个长串;给定n个询问,每个询问给定询问类型和一个段串;有两种询问类型:0类型要求输出短串在长串中出现的次数(允许重叠);1类型要求输出短串在长串中出现的次数(不允许重叠)。分析:允许重叠的容易,裸的AC自动机;不允许重叠的只需这样处理:...原创 2019-08-02 20:03:43 · 353 阅读 · 0 评论 -
HDU 2457. DNA repair (AC自动机+DP)
题目: http://acm.hdu.edu.cn/showproblem.php?pid=2457题意:给n个患病DNA串;给1个DNA串,问最少修改几个(只能用字符AGCT)能使得所有患病DNA串未出现过。分析:AC自动机上做动态规划。就像在Trie上走,去构造一个串;设f[i][j]表示长度为i,Trie树上节点为j时最少替换的字符数;则答案为min(f[len][j]), ...原创 2019-08-13 15:24:28 · 382 阅读 · 0 评论 -
HDU 3247. Resource Archiver (AC自动机+bfs+DP)
题目: http://acm.hdu.edu.cn/showproblem.php?pid=3247题意:给定n个串,将他们放在一个串s中,可以重叠;给定m个串,要求s中不能出现这m个串;问s最小多长。分析:两篇很好的题解:https://blog.youkuaiyun.com/woshi250hua/article/details/8021283https://www.cnblogs.com...原创 2019-08-15 11:05:19 · 551 阅读 · 0 评论