题目描述 你有一个字符串S,一开始为空串,要求支持两种操作 在S后面加入字母C 删除S最后一个字母 问每次操作后S有多少个两两不同的连续子串 输入 一行一个字符串Q,表示对S的操作 如果第i个字母是小写字母c,表示第一种加字母c的操作 如果为-表示删除操作,保证所有删除操作前S都非空 |Q|<=10 ...
分类:
其他好文 时间:
2018-04-03 21:55:37
阅读次数:
161
"bzoj" "luogu" 题面 给定n个模板串,以及m个查询串。 依次查询每一个查询串是多少个模板串的子串。 sol 广义后缀自动机裸题? 先建出$SAM$,然后记录一下每个节点分别在多少个模板串里出现过。 对于询问直接在$SAM$上跑匹配就行了。 code cpp include includ ...
分类:
其他好文 时间:
2018-04-02 18:03:55
阅读次数:
105
题链: http://www.lydsy.com/JudgeOnline/problem.php?id=4566题解: 广义后缀自动机 对两个串同时建立一个广义后缀自动机。 同时统计出每个状态对两个串分别的right集合大小right[*][0/1] 那么答案就是$$ANS=\sum_s right ...
分类:
其他好文 时间:
2018-03-10 21:56:41
阅读次数:
159
题目 给定n个字符串,询问每个字符串有多少子串(不包括空串)是所有n个字符串中至少k个字符串的子串? 输入格式 第一行两个整数n,k。 接下来n行每行一个字符串。 输出格式 一行n个整数,第i个整数表示第i个字符串的答案。 输入样例 3 1 abc a ab 输出样例 6 1 3 提示 对于 100 ...
分类:
其他好文 时间:
2018-03-09 22:48:08
阅读次数:
229
传送门 一个广义后缀自动机模板。 //Achen #include<algorithm> #include<iostream> #include<cstring> #include<cstdlib> #include<vector> #include<cstdio> #include<queue> ...
分类:
其他好文 时间:
2018-03-07 17:33:21
阅读次数:
180
3277: 串 Description 字符串是oi界常考的问题。现在给定你n个字符串,询问每个字符串有多少子串(不包括空串)是所有n个字符串中 至少k个字符串的子串(注意包括本身)。 字符串是oi界常考的问题。现在给定你n个字符串,询问每个字符串有多少子串(不包括空串)是所有n个字符串中 至少k个 ...
分类:
其他好文 时间:
2018-02-26 20:36:07
阅读次数:
150
【BZOJ3926】诸神眷顾的幻想乡(后缀自动机) 题面 "BZOJ" 题解 广义后缀自动机啦 求多个串的不同子串个数? 当然是后缀自动机,最后只要把$longest parent.longest$求个和就好啦 那么这题怎么建后缀自动机 能够把所有子串都丢进去呢? 当然不用从每一个节点开始 把树建出 ...
分类:
其他好文 时间:
2018-02-21 20:27:13
阅读次数:
169
【BZOJ3277】串(后缀自动机) 题面 "BZOJ" 题解 广义后缀自动机??? 照着别人的打了一遍。。 相当于每个串都构建一个后缀自动机 构建完一个串之后,直接把当前的last指回root就行了??? 好吧,我觉得我看了一个假的广义后缀自动机。。 不过这道题这样就行了 考虑如何计算一个串在多少 ...
分类:
其他好文 时间:
2018-02-21 18:14:24
阅读次数:
243
Beside other services, ACM helps companies to clearly state their “corporate identity”, which includes company logo but also other signs, like tradema ...
分类:
编程语言 时间:
2017-12-13 23:28:04
阅读次数:
253
广义后缀自动机+二分+单调队列+dp 这道题其实就是一个简单dp,dp[i]表示匹配到i最长匹配多少,设val[i]表示当前位置和原串的最长公共长度,二分的长度是L,那么要求dp[i]=max(dp[i-1],dp[j]+i-j)要求L<=i-j<=val[i],那么也就是j>=i-val[i],前 ...
分类:
其他好文 时间:
2017-11-20 21:42:54
阅读次数:
157