codeforces
Philosophiofantasia
这个作者很懒,什么都没留下…
展开
-
CodeForces 666E Forensic Examination(广义后缀自动机+线段树合并)
题目链接题解:首先对于所有较短串建广义后缀自动机,线段树合并即可得到每个点所带表串在每个串中的出现次数,将询问按照长串的r从小到大排序,每次r变化的时候先把1-r的最长匹配后缀所在的位置在parent树上跳出来,然后对于不同的长度在该位置到根的链上倍增跳祖先,把每个点应该在的位置处理出来之后就可以直接在线段树上查询了,方法就是各显神通,个人的方法不是很好代码写的不是很好看#include&l...原创 2019-02-20 22:25:05 · 236 阅读 · 0 评论 -
CodeForces 528D Fuzzy Search(FFT)
题目链接之前说了怎么用FFT匹配字符串,这题也差不多显然只有ACGT这么几个是在暗示我们把他们分开算长串t,短串s,长串长lenb,短串长lena那么我们的任务就变成了计算在从长串t的p位置开始能不能把短串里的所有这类字符匹配上去我们定义一个函数f[i]f[i]=1表示长串t中i这个位置左右k内都没有该字符f[i]=0表示有函数g[i]表示i这个位置是不是该字符显然匹配失败当且仅...原创 2019-03-13 13:00:35 · 191 阅读 · 0 评论