字符串
文章平均质量分 57
YiPeng_Deng
这个作者很懒,什么都没留下…
展开
-
JZOJ6930. 【2020.12.26冬令营模拟】rna
Description有一个边为字符的树(字符集大小为2n2n2n)。qqq次在线操作。修改:在某一个点下面加点。询问:对于一个节点xxx到它的根节点的路径上的字符串SSS,已有一个它的长度为lll的前缀,每一次随机在后面加入字符集中的一个字符,问期望多少次能够得到SSS。对998244353取模。q,n≤3e5q,n\le3e5q,n≤3e5Solution首先考虑一个串SSS的时候怎么计算,与[CTSC2006]歌唱王国是一样的,考虑这个串的所有border,期望步数为:∑i=原创 2020-12-29 21:32:40 · 172 阅读 · 0 评论 -
CF700E Cool Slogans
CF700E Cool Slogans给定一个字符串 SSS,要求构造字符串序列 s1,s2,…,sks_1,s_2,…,s_ks1,s2,…,sk满足任意sis_isi 都是SSS的子串,且sis_isi在si−1s_{i-1}si−1中出现至少两次。求最大kkk∣S∣≤2e5|S|\le2e5∣S∣≤2e5Solution首先所有的sis_isi的序列都可以缩成sis_isi是si−1s_{i-1}si−1后缀的形式,所以考虑直接在后缀树上进行DP。需要证明一个重要的原创 2020-10-16 07:32:07 · 201 阅读 · 0 评论 -
agc020D Min Max Repetition
agc020D Min Max Repetition多组询问。每个询问给定四个整数,A,B,C,DA,B,C,DA,B,C,D,求一个满足这个条件的字符串:长度为A+BA+BA+B,由AAA个字符A和BBB个字符B构成。在此基础上,连续的相同字符个数的最大值最小在此基础上,字典序最小输出这个字符串的第CCC位到第DDD位。Solution答案可以通过选择少数的字符作为间隔数计算得到。可以证明,确定答案为s时,最后的串为:A..AB(n)+A..B..+AB..B(m)A..AB(原创 2020-10-15 21:08:18 · 156 阅读 · 0 评论 -
【SAM复习】JZOJ6717. 【2020.06.11省选模拟】敏感词
DescriptionT<=10,|S|<=20000Solution省选之前打SAM练练手(虽然跟重新学没什么区别),太久没有复习了,很多关于SAM的定义理解什么的都忘光了。这题就是建一个SAM,然后合并parent树上的endpos集合,可以直接dsu on tree.考虑对于一个节点,它可以选择的长度为L到R,二分一个长度,那么答案就是∑min(Δi,len)\sum min(\Delta i,len)∑min(Δi,len),Δi\Delta iΔi是相邻的endpos原创 2020-06-12 22:27:51 · 261 阅读 · 0 评论 -
后缀数组学习小计
其实很久之前思想上就会了,只不过一直没有打过Orz,这两天打了一下,其实比SAM好理解多了呀后缀数组的定义将字符串s以所有位置开头的后缀排个序。SA[i]:排名第i的后缀的开头。Rank[i]:以i开头的后缀的排名。SA与Rank其实是互逆的。后缀数组的求法有一种比较快的DC3可以做到O(n),但是常数巨大,不推荐使用(除非出题人真的卡你)所以还是老老实实用倍增吧,O(n l...原创 2019-10-22 16:38:42 · 129 阅读 · 0 评论 -
【2019暑假集训】08.05比赛总结+HduACM
传送门这么多天一来第一次做省选组,居然登顶了比赛思路T1(有趣的数):直接数位DP似乎会T,逐渐丧失自信。。。T2(可见的点):找规律+莫比乌斯反演+整除分块,感jio还行。T3(精明的壕):看错题目++,最后十分钟上了暴力,似乎有40.赛后消化T1居然过了,暴力=正解。T2看似伪的代码(多了个n的复杂度)却过了。T3自闭了,数组开小只有十分。正解比较好理解,但是实现???...原创 2019-08-06 08:50:16 · 175 阅读 · 1 评论 -
JZOJ3402. 【GDOI2014模拟】Pty的字符串
咕了半个暑假的题目Description有一棵树有n个节点,深度浅的点往深度深的点连有向边,边上带有字符ch(a~c)给定字符串S,设一条从任意点出发往下的树上路径对应边上字符连接起来的字符串,求S的所有子串对应树上字符串的总匹配数和。|S|<=8e6,n<=8e5Solution关于子串问题,不难想到后缀自动机,刚开始我想以S建一个SAM,结果发现对于从任意点出发并...原创 2019-08-01 19:19:28 · 187 阅读 · 0 评论 -
JZOJ4752. 【GDOI2017模拟9.4】字符串合成
DescriptionT(T<=10)组数据,每组|S|<=1e5Solution考虑翻转操作,这个问题的实质就是很多个回文串嵌套在一起,再补上一些零散的位置。对于回文串以及回文字串的问题,回文树(回文自动机)就能够很好地解决。那么考虑翻转的两个性质(这里不给出证明):(1) S与rev(S)的组成代价是一样的。(2) 如果一个回文串是偶数长度,那么必然又它...原创 2019-03-09 16:41:05 · 211 阅读 · 0 评论 -
JZOJ4683. 【GDOI2017模拟8.11】矩阵
Description给定一个仅含有大写字母的n*m(n,m<=110)的矩阵,求不同的矩阵个数。Solution考虑枚举按照宽度将矩阵分类,分别统计。将每一行的每个位置开头,且长度该宽度的字串压一个编号,同一列的该宽度字串上下拼接即可形成任意一个该宽度下的矩阵。将每一列的编号排列成一个字符串,设为Si将所有列的S排列成:S1#S2#S3#…Sk我们只需要用后缀自动机求出...原创 2019-05-31 20:44:02 · 259 阅读 · 0 评论 -
【线头DP】JZOJ3320.【BOI2013】【LOJ#2687 Vim】文本编辑器
DescriptionN<=7e4,字符集为’a’~'j’共10个Solution暴力(N3)比赛的时候题意没有看清楚,但是暴力的思路还是正确的,却因为我没有看清f操作代价为2,而删除一个e后向右移,所以惨爆零。先来看一看比较显然的策略,我们每一次都是一直往后跳到某个位置(称向左为向前,向右即为向后),再一直往前跳并删去这一段中的e,所以每一次e是一段一段地被删去的。...原创 2019-07-08 20:02:17 · 285 阅读 · 0 评论