码迷,mamicode.com
首页 >  
搜索关键字:后缀自动机    ( 599个结果
[HAOI2016]找相同字符 广义后缀自动机_统计出现次数
题目描述:给定两个字符串,求出在两个字符串中各取出一个子串使得这两个子串相同的方案数。两个方案不同当且仅当这两个子串中有一个位置不同。 输入输出格式输入格式:两行,两个字符串 s1,s2,长度分别为n1,n2。1 <=n1, n2<= 200000,字符串中只有小写字母 输出格式:输出一个整数表示答 ...
分类:其他好文   时间:2019-01-20 00:58:11    阅读次数:182
bzoj 4566 找相同字符 —— 广义后缀自动机
题目:https://www.lydsy.com/JudgeOnline/problem.php?id=4566 建出两个串的广义后缀自动机; 统计每个点在两个串中出现次数的子树和,其实就是在两个串中的 right 集合大小; 然后统计答案乘起来即可。 代码如下: ...
分类:其他好文   时间:2019-01-19 12:19:45    阅读次数:207
bzoj 4566 [Haoi2016]找相同字符——广义后缀自动机
题目:https://www.lydsy.com/JudgeOnline/problem.php?id=4566 每个后缀结尾处 ct[ ] = 1 ,按拓扑序 dp 一下就能求出 right 集合的大小。自动机上每个点的贡献就是 ( l [cr]-l [fa] ) * ct[0][cr] * ct ...
分类:其他好文   时间:2019-01-19 12:11:51    阅读次数:174
bzoj 3277 & bzoj 3473 串 —— 广义后缀自动机
题目:https://www.lydsy.com/JudgeOnline/problem.php?id=3277 https://www.lydsy.com/JudgeOnline/problem.php?id=3473 广义后缀自动机:https://www.cnblogs.com/HocRise ...
分类:其他好文   时间:2019-01-19 11:22:45    阅读次数:180
[HAOI2016]找相同字符
"传送门" 两个串嘛……可以建广义后缀自动机。 我们每次要记录一下对于每个节点,其对应的在第一个串上的size和第二个串上的size,那么每个节点对于答案的贡献就是$size[0] size[1] (l[i] l[fa[i]])$ 解释一下,size其实表示的就是endpos集合之内的元素个数 ,也 ...
分类:其他好文   时间:2019-01-13 00:25:08    阅读次数:212
[ZJOI2015]诸神眷顾的幻想乡
"传送门" 这题的字符串匹配搬到了树上……?那不在一条链咋做啊……不会了,凉凉…… 然后丽洁姐姐给我们留了一条生路……就是保证了叶子节点的个数不超过20. 树上任意一条路径,我们总能找到一个叶子节点,使得以它为根的时候这条路径在一条链上。那我们可以把每个叶子节点作为根节点来建立广义后缀自动机,最后直 ...
分类:其他好文   时间:2019-01-13 00:17:40    阅读次数:187
SP8093 JZPGYZ - Sevenk Love Oimaster
"传送门" 广义后缀自动机…… 其实也不是很难理解,就是每次SAM插入一个串之后,插入新的串的时候,要把last重新调到1的位置,共用一些节点。 这个题我们首先要预处理出来每个状态被多少个串共用。~~挺暴力的~~就是每次把节点染色,如果节点没被染色就给他染一下,然后记录当前节点又被共用了一次。 最后 ...
分类:其他好文   时间:2019-01-12 22:55:18    阅读次数:224
P3804 【模板】后缀自动机
$\color{ 0066ff}{ 题目描述 }$ 给定一个只包含小写字母的字符串$S$, 请你求出 $S$ 的所有出现次数不为 $1$ 的子串的出现次数乘上该子串长度的最大值。 $\color{ 0066ff}{输入格式}$ 一行一个仅包含小写字母的字符串$S$ $\color{ 0066ff}{ ...
分类:其他好文   时间:2019-01-10 18:50:56    阅读次数:203
bzoj4566 找相同字符
题意:给定两个字符串,从中各取一个子串使之相同,有多少种取法。允许本质相同。 解:建立广义后缀自动机,对于每个串,分别统计cnt,之后每个点的cnt乘起来。记得开long long 1 #include <cstdio> 2 #include <algorithm> 3 #include <cstr ...
分类:其他好文   时间:2019-01-07 21:08:04    阅读次数:202
CF666E Forensic Examination(后缀自动机+线段树合并)
给你一个串S以及一个字符串数组T[1..m],q次询问,每次问S的子串S[pl..pr]在T[l..r]中的哪个串里的出现次数最多,并输出出现次数。 如有多解输出最靠前的那一个。 我们首先对m个字符串数组建出后缀自动机,然后我们可以通过跳trans边找到S前i个字符代表的前缀的最长后缀。我们要找的是 ...
分类:其他好文   时间:2019-01-06 18:55:12    阅读次数:167
599条   上一页 1 ... 12 13 14 15 16 ... 60 下一页
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!