AC自动机
直接学AC自动机比较难理解,强烈建议先学完KMP和字典树并进行一定的练习后,对于失配指针和字典树构造有一定理解后再来学AC自动机的内容。有关AC自动机的详细介绍可见刘汝佳的《算法竞赛入门经典训练指南》P214.
给你一个字典(包含n个不重复的单词),然后给你一串连续的字符串文本(长为len),问你该文本里面的哪些位置正好出现了字典中的某一个或某几个单词?输出这些位...
分类:
其他好文 时间:
2015-03-29 23:50:15
阅读次数:
535
时间限制:10000ms
单点时限:1000ms
内存限制:256MB
描述
小Hi和小Ho是一对好朋友,出生在信息化社会的他们对编程产生了莫大的兴趣,他们约定好互相帮助,在编程的学习道路上一同前进。
这一天,他们遇到了一本词典,于是小Hi就向小Ho提出了那个经典的问题:“小Ho,你能不能对于每一个我给出的字符串,都在这个词典里面找到以这个字符串开头的所有单词呢?...
分类:
其他好文 时间:
2015-03-21 18:44:22
阅读次数:
130
Trie(Retrieval Tree)又称前缀树,可以用来保存多个字符串,并且非常便于查找。在trie中查找一个字符串的时间只取决于组成该串的字符数,与树的节点数无关。因此,它的查找速度通常比二叉搜索树更快。trie的结构很简单,每条边表示一个字符,从根节点到叶节点就可以表示一个完整的字符串。所以...
分类:
编程语言 时间:
2015-03-21 06:19:38
阅读次数:
190
我们需要知道一个事实,trie树上是可以要求第k大的!我们每个节点记个size值然后像其他数据结构一样维护就可以了然后我们再搞个priority_queue什么的就好了,注意每个值会出现两次只要记一次 1 /*********************************************....
分类:
其他好文 时间:
2015-03-20 23:36:29
阅读次数:
164
题解:
首先我们处理出来sum[0,n]sum[0,n]作为异或前缀和,然后答案就不再是[l,r][l,r]中间某段区间的异或和,而转化成求了[l?1,r][l-1,r]中任意两点异或和的最大值。
然后我们分块处理出fi,jf_{i,j}表示 [第i块的开头,j?1][第i块的开头,j-1] 这段区间中任取一点和点jj异或和的最大值,而用gi,jg_{i,j}做个类似前缀和的操作,记录第ii块...
分类:
其他好文 时间:
2015-03-20 22:07:44
阅读次数:
223
SHIT,SHIT,SHIT,SHIT,SHIT...这道题可以使用AC自动机+DP来解决。也就是用非法路径建立TRIE图,然后从trie[root][1]点开始广搜DP即可。千万要注意一点,题目里有说:小明每次走的时候只能走到比当前所在点编号大的位置因为这个WA了无限次。。。#include #i...
分类:
其他好文 时间:
2015-03-20 18:34:25
阅读次数:
145
const maxn=600008; len=24;var x,y,z,n,m,tot,lx,i:longint; sum:array[0..maxn] of longint; rt:array[0..maxn] of longint; time,l,r:array[0....
分类:
其他好文 时间:
2015-03-20 17:59:54
阅读次数:
115
题目:http://www.tsinsen.com/A1486题解: 其实看到和路径有关的就应该想到点分治。 我们找出重心之后遍历每一棵子树得到它的 { x=经过特殊点的个数,y=到rt的异或和} 然后我们按x排序,维护两个头尾指针不断把满足条件的加入trie,然后把左边的放进tr...
分类:
其他好文 时间:
2015-03-19 23:31:29
阅读次数:
249
传送门http://hihocoder.com/problemset/problem/1036Solution: 1 #include 2 #include 3 #include 4 #include 5 using namespace std; 6 7 struct Nod...
分类:
其他好文 时间:
2015-03-19 21:39:52
阅读次数:
194
AC自动机,其实就是Trie树与KMP的结合,且有dfa(有限状态机)的性质.
理解的关键点:
1. fail指针 起到回溯作用
2.每次匹配都是主串不动,移动指针now去回溯找后缀的前缀
3.一个优化点,将NULL指向root 编码更简单.
考察时一般也会问道dfa的性质.
AC自动机解决问题:
1.多模式串匹配
2.给定一个长度,满足XX条件能构造多少个.
ABCD ...
分类:
其他好文 时间:
2015-03-18 14:09:14
阅读次数:
138