「SCOI2012」喵星球上的点名 填一个很久以前用 $\texttt{AC}$ 自动机没填上的坑。 关于本题,能够通过本题的算法很多,这里作者采用的是后缀数组+树状数组的做法。 首先有一个显然的结论:若 $s_2$ 是 $s_1$ 的子串,则 $s_1$ 一定存在一个后缀与 $s_2$ 的最长公共 ...
分类:
其他好文 时间:
2020-02-06 16:39:23
阅读次数:
72
喵星球上的点名: 对于字符串的匹配问题,可以考虑把文本、模式串串起来,然后处理SA数组。中间加上不同的“挡板字符”防止两个不同的串被以为是一个串匹配($ab$、$aba$)。但是一个后缀串还是会和另一个串匹配多次。对于点名串,它叫到的名字的$lcp$不小于点名串的长度,那么可以单调栈求控制范围了,对 ...
分类:
其他好文 时间:
2019-12-29 10:45:54
阅读次数:
77
T1:Sandy的卡片 做这道题时对$height[]$理解不深刻,导致一晚上没$A$掉这道题 显然是把差值当成字符数组,把串连起来处理出$height[]$ 之后二分,开一个栈记录存储出现的元素,只要元素个数大于等于$n$即可判断合法 T2:喵星球上的点名 延续上一道题的套路,把名字和询问连成一个 ...
分类:
编程语言 时间:
2019-12-24 10:15:04
阅读次数:
80
A.Sandy的卡片 将所有差分之后串连起来,求$height$,二分答案转化为是否存在一段连续的区间使得这个区间中的$height$全部大于二分的值并且覆盖所有串。 B.喵星球上的点名 这题做法非常多。。。第一次用AC自动机暴力水过,顺便颓了题解,然后现在又做了一边就知道标签了。。 比较方便的做法 ...
分类:
编程语言 时间:
2019-12-23 20:52:16
阅读次数:
91
"Link" Description 一共$n$个人,每个人有 两个名字串 。再给定$m$个点名串。询问每个点名串是多少人名字串的子串。第二问询问对于每个人,一共有多少点名串是其两名字串(满足一个串即可)的子串。 Solution SA+莫队。 结论 :串$T$是串$S$的子串,应当满足串$S$有某 ...
分类:
其他好文 时间:
2019-12-23 00:47:15
阅读次数:
92
喵星球的上的点名 给定一个字符串集合S,每次给定T询问S中有多少个字符串中包含T,最后询问S中的每一个字符串包含了多少次给定的T。 思路 考虑将这S个字符串建立广义SAM,那么我们每次将T放到广义SAM中去匹配,最后匹配到的节点的parent子树中来自不同串的结束位置数就是第一问的答案。 同样我们每 ...
分类:
其他好文 时间:
2019-07-02 21:28:02
阅读次数:
112
P2336 [SCOI2012]喵星球上的点名 ...
分类:
其他好文 时间:
2019-04-15 22:58:49
阅读次数:
193
scoi2005 繁忙的都市 扫雷 互不侵犯 scoi2006 zh_tree scoi2007 排列 scoi2009 最长距离 生日礼物 scoi2010 幸运数字 scoi2011 糖果 scoi2012 喵星球上的点名 ...
分类:
其他好文 时间:
2019-04-07 09:22:18
阅读次数:
146
题意: 给你N个串对,M个询问串,对每个询问串求是多少串对的子串(在串对的某一个中作为子串),以及每个串对最终是包含了多少询问串 方法众多。。 可谓字符串家族八仙过海各显神通。 复杂度不尽相同,O(nlogn),O(nsqrt(n)),O(玄学)(也就是暴力) (数据比较水,所以一些暴力就过去了) ...
分类:
其他好文 时间:
2018-12-23 18:37:49
阅读次数:
197
"传送门" 这题tm把AC自动机叉掉了,,, 只能考虑别的做法 把所有串连在一起,不同串的交界处加入一些不同的字符,然后求出sa数组和height数组,现在一个询问的答案就是和那个询问串的lcp正好为询问串长度的原串个数,而这在把后缀排好序后是一个区间,每个原串答案为包含这个原串的某个点的区间个数 ...
分类:
其他好文 时间:
2018-12-11 11:29:03
阅读次数:
186