Loading [MathJax]/jax/output/HTML-CSS/jax.js

随笔分类 -  字符串-AC自动机

摘要:题意n个01病毒串,总长不超过30000。问是否存在无限长的不包含病毒串的01串。 分析考虑ac自动机,如果不包含病毒串而且无限长也就是说存在一个环(转移和fail树),使得环上不含病毒串。 题解所以我们标记一下病毒串后dfs找环即可。 include <bits/stdc++.h u... 阅读全文
posted @ 2015-11-22 14:27 iwtwiioi 阅读(285) 评论(0) 推荐(0) 编辑
摘要:题意给你一些字符串。m次询问,每一次询问第x个字符串在y字符串中出现了多少次。(输入总长105, M105) 分析在ac自动机上,x字符串出现的所有位置就是其它节点的fail树上有这个节点的节点。即fail树中,x字符串终止节点的子树。 题解根据... 阅读全文
posted @ 2015-11-22 13:47 iwtwiioi 阅读(231) 评论(0) 推荐(0) 编辑
摘要:题意给一个串s(1|s|500000),求一个最长的串,使得这个串能覆盖整个串(可以重叠)。 分析首先这个串肯定是前缀也肯定是后缀。 题解对串kmp后,建立fail树,则答案在根到n的路径上。假设当前串为a,位置在i,则所有出现了a的位置相邻两个的距离要... 阅读全文
posted @ 2015-11-22 13:28 iwtwiioi 阅读(500) 评论(0) 推荐(0) 编辑
摘要:题意给出n个回文串si(ni=1|si|2000000)求如下二元组(i,j)的个数si+sj仍然是回文串。 分析这道题其实是一道傻逼hash题,可是为了学习拓展kmp我就写了拓展kmp。其实我们考虑a+b如果是回文串,那么a的... 阅读全文
posted @ 2015-11-22 13:25 iwtwiioi 阅读(327) 评论(0) 推荐(0) 编辑
摘要:10分做法:由于空间卡得紧,所以给了10分暴力分0.0所以大家很容易就知道暴力就是线段树套ac自动机辣时间:O((|qSi|+|nSi|)logQ)空间:O((|nSi|)logn)40-50分做法:发现我们可以用莫队做,可是有删除操作不好搞。发现其... 阅读全文
posted @ 2015-05-28 12:02 iwtwiioi 阅读(1021) 评论(1) 推荐(0) 编辑
摘要:http://www.lydsy.com/JudgeOnline/problem.php?id=1030其实做了1009也不会感到很难了,无非将kmp变成了ac自动机。设f[i,j]表示前i个串当前匹配到j的节点的方案数。。然后自己想。sb错1:ac自动机的节点开小了(自己想错了。。以为最多节点就是... 阅读全文
posted @ 2014-11-24 14:04 iwtwiioi 阅读(419) 评论(0) 推荐(0) 编辑
摘要:复杂度:查找O(n),维护O(n)概要:应用了kmp的自匹配思想,在trie建图时维护一个fali指针,指向上一个匹配的点,这点是用bfs做到。匹配串的时候同样没匹配到就和kmp一样返回。应用:单串匹配多模板,维护多模板里边的信息。技巧及注意:插入和trie一样,然后是bfs。在bfs的过程中,注意... 阅读全文
posted @ 2014-07-21 22:20 iwtwiioi 阅读(582) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示