题目大意:给定一个字符串,求每个对应的长度能产生的相同子串的最大个数这里构建好后缀自动机之后,再将整个字符串从头到尾扫一遍,然后将每个对应的点上的sc值+1表示从头走到尾的前提下,所能产生的子串能够得到的最大数量为1然后再去考虑其他子串每个后缀自动机上的节点上的长度表示的是当前点所能接收的最大长度的...
分类:
其他好文 时间:
2015-06-20 17:07:18
阅读次数:
219
这里用第一个字符串构建完成后缀自动机以后不断用第二个字符串从左往右沿着后缀自动机往前走,如能找到,那么当前匹配配数加1如果找不到,那么就不断沿着后缀树不断往前找到所能匹配到当前字符的最大长度,然后将cur节点转移到当前节点即可,再把答案加1记住不断更新所能得到的最大值 1 #include 2 #....
分类:
其他好文 时间:
2015-06-19 01:14:35
阅读次数:
222
用后缀自动机统计出出现1~n次的串的数量f[i]对于ans[k]=sigma(f[i]*C(i,k)) i>=k 1 const maxn=10008; 2 mo=1000000007; 3 var a,f,rig:array[0..maxn] of dword; 4 ...
分类:
其他好文 时间:
2015-06-10 12:12:18
阅读次数:
104
http://blog.sina.com.cn/s/blog_7812e98601012cim.html //后缀自动机建立的详细介绍http://www.tuicool.com/articles/Mjuu2y //后缀自动机学习指南(习题列表) 1 const maxn=...
分类:
其他好文 时间:
2015-06-10 10:07:20
阅读次数:
127
DescriptionInput一行,一个字符串SOutput一行,一个整数,表示所求值Sample InputcacaoSample Output54HINT2#include#include#includeusing namespace std;typedef long long LL;cons...
分类:
其他好文 时间:
2015-06-08 17:05:02
阅读次数:
139
后缀自动机是一种确定性有限自动机(DFA),它可以且仅可以匹配一个给定串的任意后缀。构造一个可以接受一个给定串的所有后缀的不确定性有限自动机(NFA)是很容易的,我们发现我们用通用的将NFA转换成对应DFA的算法转换出来的DFA的状态数都很小(O(n)级别的,远远达不到指数级别)。于是,人们就开始研...
分类:
其他好文 时间:
2015-05-22 00:01:39
阅读次数:
182
2555: SubStringTime Limit: 30 SecMemory Limit: 512 MBSubmit: 688Solved: 235[Submit][Status][Discuss]Description懒得写背景了,给你一个字符串init,要求你支持两个操作(1):在当前字符串的...
分类:
其他好文 时间:
2015-05-21 22:29:29
阅读次数:
257
后缀自动机扩展到树形结构上。先建出大的Trie,然后我们得到了一棵Trie树,对于树上的每个节点,保存一个后缀自动机从根走它代表的字符串后到达的节点,每次其儿子就从父亲的这个节点开始扩展。 1 /***************************************************....
分类:
其他好文 时间:
2015-05-21 22:15:25
阅读次数:
213
建出后缀自动机,考虑每条边的贡献。发现后缀自动机的val和right集合大小都可以在转移DAG上DP(需要记录每个终止位置所在节点)。 1 /************************************************************** 2 Problem: 3...
分类:
其他好文 时间:
2015-05-20 22:18:27
阅读次数:
132
学习请看clj冬令营的讲稿吧,我是一点一点慢慢啃的……这里简单的说一下SAM的几个重要的性质1.在SAM上,起点到任意一点的所有路径无重复的识别了所有子串2.每个子串s出现的此处即ST(s)的right集合的大小(clj ppt中的定义)具体的就是parent树上子树right集合的并(其实就是子树...
分类:
其他好文 时间:
2015-05-18 12:24:49
阅读次数:
123