上一页 1 2 3 4 5 6 ··· 20 下一页
摘要: 我们对两个 同时开始 ,因为起始状态相同,那么如果遇到相同的转移就说明有相同的状态,把 $sz_x\times sz_y$ 作为贡献加到答案里面即可。注意要分别从两个根 。 2020.01.16 阅读全文
posted @ 2020-01-16 19:27 LuitaryiJack 阅读(115) 评论(0) 推荐(0) 编辑
摘要: $E_i=\sum\limits_{i=1}^{j 1}\frac{q_i}{(i j)^2} \sum\limits_{i=j+1}^n \frac{q_i}{(i j)^2}$ ,设 $f_i=\frac{1}{i^2}$,那原式前半部分相当于是 $q\times f$ ,后半部分相当于是 $r 阅读全文
posted @ 2020-01-16 19:15 LuitaryiJack 阅读(114) 评论(0) 推荐(0) 编辑
摘要: 珂朵莉树 阅读全文
posted @ 2020-01-16 18:58 LuitaryiJack 阅读(253) 评论(0) 推荐(0) 编辑
摘要: FFT 阅读全文
posted @ 2020-01-16 18:56 LuitaryiJack 阅读(103) 评论(0) 推荐(0) 编辑
摘要: bitset 阅读全文
posted @ 2020-01-16 18:54 LuitaryiJack 阅读(419) 评论(0) 推荐(0) 编辑
摘要: 不会/kk 阅读全文
posted @ 2020-01-14 21:40 LuitaryiJack 阅读(240) 评论(0) 推荐(0) 编辑
摘要: 题意:给出一个字符串 $S$ ,给出 $Q$ 个操作,给出$L$ , $R$ , $T$ ,求字典序最小的$S_1$,使得$S_1$为$S[L..R]$的子串,且$S_1$的字典序严格大于$T$。输出这个$S_1$,如果无解输出$ 1$。 $SAM$ + 线段树合并 利用在 $parent树$ 线段 阅读全文
posted @ 2020-01-10 18:33 LuitaryiJack 阅读(174) 评论(0) 推荐(0) 编辑
摘要: 题意:给定一个主串 $S$ 和 $n$ 个询问串,求每个询问串的所有循环同构在主串中出现的次数总和。 我们把 $S$ 建出 $SAM$ ,对每个询问串我们令 $T'=T[1\cdots n]+T[1\cdots n 1]$ ,我们让 $T'$ 在 $S$ 的 $SAM$ 上跑匹配即可。注意每个点要打 阅读全文
posted @ 2020-01-10 18:30 LuitaryiJack 阅读(106) 评论(0) 推荐(0) 编辑
摘要: 题意:给定 $S$ ,多组询问,每次 $a,b,c,d$ 四个参数,问你子串 $S[a..b]$ 的所有子串和 $S[c..d]$ 的最长公共前缀的长度的最大值是多少。 $SAM$ + 线段树合并 + 二分答案 二分答案 $md$ 找到 $s[c+md 1]$ 在 $SAM$ 上对应的状态并倍增跳到 阅读全文
posted @ 2020-01-10 18:25 LuitaryiJack 阅读(163) 评论(0) 推荐(0) 编辑
摘要: $SAM$ + 分类讨论 先建出 $SAM$ 然后求出 $|{\rm endpos}(p)|$ $ \sum w=kq\leq 10^5$,于是对 $k$ 的大小分类讨论。 $k\geq\sqrt n$ , $q\leq\sqrt n$ ,直接在 $SAM$ 匹配 $w$ ,求出每个位置在 $SAM 阅读全文
posted @ 2020-01-10 18:23 LuitaryiJack 阅读(103) 评论(0) 推荐(0) 编辑
摘要: $SAM$ + $LCT$ 维护 $parent树$ 每次插入一个点对应修改 $LCT$ 并链加,相当于在链上的 $\rm endpos$ 中添加一个新的位置。 匹配就在 $SAM$ 上跑即可。 2020.01.10 阅读全文
posted @ 2020-01-10 18:21 LuitaryiJack 阅读(122) 评论(0) 推荐(0) 编辑
摘要: 广义 $SAM$ + 二分答案 + 单调队列优化 $DP$ 对作文库建广义 $SAM$ ,然后求出作文每个位置的最长匹配 $d[i]$,然后二分答案 $md$,然后 $DP$ ,$f[i]$ 表示到 $i$ 的最大匹配长度,有 $f[i]=\max(f[j] j+i),j\in[i d[i],i m 阅读全文
posted @ 2020-01-10 17:53 LuitaryiJack 阅读(82) 评论(0) 推荐(0) 编辑
摘要: $SAM $ + 线段树合并 先对 $S$ 建 $SAM$ ;然后对于每一个串询问串 $T$ ,首先在 $S$ 的 $SAM$ 上跑出 $T$ 的每个位置的最长匹配长度 $f[i]$ ,即 $T[i f[i]+1,i]$ 是与 $S$ 中的某个子串是匹配的 且 $f[i]$ 是最大的 。 然后我们再 阅读全文
posted @ 2020-01-10 17:52 LuitaryiJack 阅读(128) 评论(0) 推荐(0) 编辑
摘要: 广义 $SAM$ 由于叶子节点比较少,直接暴力枚举叶子,把所有串插入广义 $SAM$ 即可。 2020.01.10 阅读全文
posted @ 2020-01-10 17:51 LuitaryiJack 阅读(74) 评论(0) 推荐(0) 编辑
摘要: 题意:多个串的最长公共子串。 $SAM$ 把第一个串插进去,之后的每个串都在上面跑。 对于每一个串记录在每个点的最长匹配 $mx[]$ 数组;跑完后更新父亲的答案,并且每个点与已有答案取 $\rm min$ 。 2020.01.10 阅读全文
posted @ 2020-01-10 17:50 LuitaryiJack 阅读(141) 评论(0) 推荐(0) 编辑
摘要: 本质不同的第 $k$ 小:每个点的初始权值为 $1$ 。 只区分位置的第 $k$ 小:每个点的初始权值为 $|{\rm endpos}|$ ,表示出现的次数。 然后进行拓扑排序。 2020.01.09 阅读全文
posted @ 2020-01-10 17:49 LuitaryiJack 阅读(82) 评论(0) 推荐(0) 编辑
摘要: 题意:给定 $n$ 个字符串 $S_{1\cdots n}$ ,求所有不同的子串的“和”(也就是把串看成数字,在十进制下的求和,允许有前导0)。答案有可能很大,我们需要对 $10^9 + 7$ 取模。 $SAM$ 把所有串用间隔字符拼起来,建出 $SAM$ ,然后在上面 bfs ,求出每个点的答案。 阅读全文
posted @ 2020-01-10 17:47 LuitaryiJack 阅读(122) 评论(0) 推荐(0) 编辑
摘要: 题意:求 $f(i),i\in[1,n]$ ,$f(i)$ 表示长度为 $i$ 的子串中,出现的最大次数。 $SAM$ 通过 $parent 树$ 子树和求出 $|{\rm endpos}(p)|$ ,然后 $ans[{\rm len}(p)]={\rm max}(ans[{\rm len}(p)] 阅读全文
posted @ 2020-01-10 17:46 LuitaryiJack 阅读(101) 评论(0) 推荐(0) 编辑
摘要: 题意:给定一个字符串,求本质不同排名第k小的子串。 $SAM$ 建好 $SAM$ 后,拓扑排序求出每个点向下的子串数,然后在 $trie$ 树上贪心(类似线段树二分)。 2020.01.09 阅读全文
posted @ 2020-01-10 17:45 LuitaryiJack 阅读(89) 评论(0) 推荐(0) 编辑
摘要: 题意:求本质不同的子串数。 "$SA$" $SAM+DP$ 答案即为路径条数。 我们设 $f[u]$ 表示从 $u$ 出发的路径条数:$f[u]=1+\sum_{(u,v,ch)} f[v]$ ,其中 $1$ 代表空串。 最后答案即为 $f[0] 1$ $SAM+parent树$ 每个子串只会出现一 阅读全文
posted @ 2020-01-10 17:43 LuitaryiJack 阅读(105) 评论(0) 推荐(0) 编辑
上一页 1 2 3 4 5 6 ··· 20 下一页