ac自动机
Dale_zero
从零开始吧!
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
hdu 2296 Ring AC自动机DP
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2296 出了很奇怪的re问题,可能是用memset清除string类型的数组会RE? 最后改了一个保证输出字典序最小就过了??? 初始化需要将dp数组置为-1,置dp00=0;-1表示不可达状态 细节比较多的AC自动机DP #include<bits/stdc++.h> usi...原创 2018-10-12 22:48:38 · 321 阅读 · 0 评论 -
hdu 1277 全文检索 AC自动机
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1277 去年9月份看的ac自动机,记得那时简直要崩溃了,怎么看都看不懂。今天发现原来是这么的简单。。也算是进步了吧 细节比较多的入门题,测了下以前的板子对不对。。 居然被调试语句坑了2发,哎呀呀 #include<bits/stdc++.h> using namespace s...原创 2018-10-07 00:36:19 · 295 阅读 · 0 评论 -
hdu 5880 Family View AC自动机
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5880 更新了模板,另外读入的时候需要注意用gets() 模板(kuangbin): const int MAX=500005; struct Trie { int next[MAX][26],fail[MAX],end[MAX]; int root,L; int ne...原创 2018-10-09 20:40:12 · 229 阅读 · 0 评论 -
hdu 2457 DNA repair AC自动机+DP
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2457 这道题用不到query函数,直接在带fail的字典树上面进行dp。 明确两点: ①:所有串insert之后builfail会将所有next=-1的指针指向根节点 ②:正常查询时若查到一个有标记值的点,需要不断向上遍历fail节点,因为fail是其最长后缀,其出现则其后缀也一定出现。 但...原创 2018-10-10 00:31:52 · 280 阅读 · 0 评论 -
hdu 2825 Wireless Password AC自动机DP
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2825 发现只奥树上节点较少并且有最优子结构的问题就可以用ac自动机dp求解。 新发现了一点: buildfail之后,之前等于-1的next值会赋值为与根节点相同分支的next值。 这是一个ac自动机上的状压dp,dp【i】【j】【k】代表用i个字符到达了节点j,并且当前覆盖了字符串集合k时有...原创 2018-10-10 19:41:56 · 268 阅读 · 0 评论 -
2018北京ICPC H Approximate Matching AC自动机DP
题目链接:http://hihocoder.com/problemset/problem/1877 因为近似匹配最多只能有1个字符不匹配,所以向ac自动机里加入n+1个模式串(还有一个原串)。然后用AC自动机DP,insert之后构建fail边。 如果要让dpij代表前i个字符到达第j个节点并且至少近似匹配一次的话,转移起来会非常麻烦,所以就反过来统计前i个字符到达第j个节点没有近似匹配的字符...原创 2018-11-14 22:19:25 · 597 阅读 · 0 评论
分享