![](https://img-blog.csdnimg.cn/20201014180756919.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
字符串-后缀数组
Dream_Lolita
退役OIer,转战ACM
展开
-
【后缀数组/细节题】 CC_EST Equivalent Suffix Tries
【题目】 原题地址 题目大意:给出一个字符串,求与这个字符串【后缀树同构】的字符串有多少个。【题目分析】 寻找后缀树的性质!【解题思路】 这道题是真的真的很难写。 首先明确一下,后缀树是由字符串每个后缀建出的Trie。设每个后缀sufisufisuf_i为s[i..n]s[i..n]s[i..n]观察后缀树的特点,我们可以发现,字符串中出现了多少个字符,根节点就有多少个分叉,...原创 2018-08-20 16:01:23 · 242 阅读 · 0 评论 -
【SA/SAM】CF873F Forbidden Indices
【题目】CF给定一个字符串sss,令f(a)f(a)f(a)表示字符串aaa在sss中出现次数,特别地,还会给出若干个非法位置,以这些位置为结尾的字符串不会统计入出现次数中。求最大的∣a∣⋅f(a)|a|\cdot f(a)∣a∣⋅f(a)。n≤2×105n\leq 2\times 10^5n≤2×105【解题思路】如果用SAM\text{SAM}SAM来做就没什么意思了,直接合并rig...原创 2019-04-25 06:47:41 · 302 阅读 · 0 评论 -
【SAM/SA+主席树+拓扑DP】LOJ3049 [十二省联考 2019] 字符串问题
【题目】LOJ给定一个长度为nnn的字符串,在其中选择nanana段区间作为AAA字符串集,选出nbnbnb段区间作为BBB字符串集,区间之间互不影响。再给定mmm组支配关系(x,y)(x,y)(x,y),表示AAA集中第xxx个字符串能支配BBB集中第yyy个字符串。求一个长度最大的字符串TTT,存在一个分割T=t1+t2+⋯+tkT=t_1+t_2+\cdots +t_kT=t1+t2...原创 2019-04-12 22:11:07 · 258 阅读 · 0 评论 -
【阈值+SA+倍增+主席树】BZOJ5304 [HAOI2018] 字串覆盖
【题目】lydsy给定两个字符串A,BA,BA,B以及一个参数KKK,有QQQ次询问每次给定(s,t,l,r)(s,t,l,r)(s,t,l,r),令T=A[s…t],P=B[l…r]T=A[s\dots t],P=B[l\dots r]T=A[s…t],P=B[l…r],每次若TTT的一个子串与PPP相同,就可以删掉TTT的这个子串然后获得K−iK-iK−i的收益,其中iii为初始AAA中这...原创 2019-03-13 21:56:32 · 264 阅读 · 0 评论 -
【后缀数组】CF653F Paper task
【题目】CF给定一个括号串,问有多少种不同的合法括号子串。n≤5×105n\leq 5\times 10^5n≤5×105【解题思路】首先我们将左括号看作111,右括号看作−1-1−1,肯定要处理出一个前缀和数组。如果不考虑重复,那么我们不妨考虑求以每个位置开头的合法子串个数,即对于每个位置iii,我们需要求有多少个i<j≤n,s.t.sj=si−1,∀i≤k≤j,sk≥s...原创 2019-02-28 08:19:24 · 372 阅读 · 0 评论 -
【后缀数组+阈值】CF741E Arpa’s abnormal DNA and Mehrdad’s deep interest
【题目】CF给定两个字符串S,TS,TS,T,定义RiR_iRi表示在SSS的第iii个和第i+1i+1i+1个字符之间插入TTT得到的字符串(R0R_0R0即加在开头,RnR_nRn即加在结尾)。QQQ个询问形如(l,r,k,x,y)(l,r,k,x,y)(l,r,k,x,y),表示询问l≤i≤r,x≤(imod  k)≤yl\...原创 2019-01-31 17:48:35 · 531 阅读 · 0 评论 -
【泛刷题】TJOI2017(BZOJ4887~4892)
【前言】刚刚从雅礼集训回来,老师免了期末考。同时看着一批dalao去WC签约,而我只能在这里恢复训练。【题目】BZOJluoguBZOJ4887 可乐设fi,jf_{i,j}fi,j表示第iii秒在第jjj个城市的方案数,写出转移方程用矩乘优化即可。当然还要记录一个计数器。复杂度O(n3logt)O(n^3\log t)O(n3logt)#include<bits/s...原创 2019-01-20 20:37:45 · 292 阅读 · 0 评论 -
【背板子-后缀数组】BZOJ4199 BZOJ4650 LGP5108 CF504E
【前言】后缀数组一直是我没有背的板子来着。强行背了下来。adjust这个函数丢不掉了。【题目】BZOJ4199 [NOI2015] 品酒大会BZOJ按heightheightheight从大到小拆隔板统计答案,启发式合并信息,只需要记录sizsizsiz和aia_iai的最大最小值即可,其他东西并没有什么用。复杂度O(nlogn)O(n\log n)O(nlogn)。#inc...原创 2019-01-24 09:15:12 · 223 阅读 · 0 评论 -
【后缀数组+???】BZOJ3654 图样图森破
【题目】原题地址给定一个字符串集合SSS,每次可以向SSS中加入一个已经存在于SSS中的字符串或者从SSS中选出两个字符串,将它们拼接后得到的字符串加入SSS。∣S∣≤100,∣Si∣≤1000|S|\leq 100,|S_i|\leq 1000∣S∣≤100,∣Si∣≤1000【解题思路】第一眼看肯定先判掉单个串是回文串,然后就陷入了沉思。分析了很久以后看出来,如果答案不是INFIN...原创 2018-12-30 21:52:52 · 351 阅读 · 0 评论 -
【后缀数组/SAM+边分树合并】LGP5115 Check,Check,Check one two!
【题目】原题地址给定一个字符串SSS,求∑1≤i&amp;amp;lt;j≤nlcp(i,j)lcs(i,j)[lcp(i,j)≤k1][lcs(i,j)≤k2]\sum_{1\leq i&amp;amp;lt;j\leq n}lcp(i,j)lcs(i,j)[lcp(i,j)\leq k_1][lcs(i,j)\leq k_2]1≤i&amp;lt;j≤n∑lcp(i,j)lcs(i,j)[lcp(i,j)≤k1...原创 2018-12-28 10:52:56 · 777 阅读 · 0 评论 -
【SAM+线段树合并/SA+扫描线】CF1037H Security
【题目】原题地址给定一个长度为nnn的字符串SSS和qqq个询问,每次询问形如l&amp;amp;nbsp;r&amp;amp;nbsp;Tl\ r\ Tl&amp;amp;nbsp;r&amp;amp;nbsp;T,其中TTT是一个字符串,表示询问sl,…,srs_l,\dots,s_rsl,…,sr这个字符串中比TTT字典序大的字典序最小的子串是什么,如没有则输出−1-1−1。n≤105,q,∣S∣,∑∣T∣≤2×105n\leq原创 2018-12-02 15:39:29 · 482 阅读 · 0 评论 -
【SA+DP】CF1063F String Journey
【题目】CF定义一个字符串序列ttt是合法的,当且仅当tit_iti是ti−1t_{i-1}ti−1的子串,且ti≠ti−1t_i\neq t_{i-1}ti̸=ti−1。求一个最长的合法字符串序列ttt,满足存在一个字符串序列uuu,使得s=u1+t1+u2+t2+⋯+tk+uk+1s=u_1+t_1+u_2+t_2+\dots +t_k+u_{k+1}s=u1+t1+u2...原创 2019-05-01 15:09:13 · 349 阅读 · 0 评论