SAM
_Shmily
这个作者很懒,什么都没留下…
展开
-
2020牛客暑期多校训练营(第四场)C、Count New String (SAM)
题目链接题面:题意:定义字符串函数f(S,x,y)(1<=x<=y<=n)f(S,x,y)(1<=x<=y<=n)f(S,x,y)(1<=x<=y<=n) 返回一个长度为y−x+1y-x+1y−x+1的串,第 k 位是maxi=x...x+k−1Simax_{i=x...x+k-1}S_imaxi=x...x+k−1Si设集合 A={f(f(S,x1,y1),x2−x1+1,y2−x1+1)∣1<=x1<=x2<=y2&l原创 2020-08-25 08:50:48 · 99 阅读 · 0 评论 -
2020牛客暑期多校训练营(第二场) A、All with Pairs (hash、后缀自动机)
题目链接题面:官方题解:①、hash#include<iostream>#include<cstdio>#include<cstdlib>#include<algorithm>#include<cstring>#include<cmath>#include<string>#include<queue>#include<bitset>#include<map>原创 2020-08-25 08:21:41 · 135 阅读 · 0 评论 -
牛客----Words Fascinating (SAM)
题目链接题面:给定n个串,从每个串中选一个子串(可以为空),这些子串按顺序组成一个新串。问本质不同的新串的个数。我们倒着来考虑这些串。我们设 dp [ i ] [ j ] 为倒序考虑到 第 i 个串 且 新串以 j 开头的本质不同的数量。我们设 f [ i ] [ j ] 为考虑到 第 i 个串 且 倒序考虑到后缀自动机上第 j 个节点的本质不同的数量。考虑转移:if(nt[now][j]) f[now]=(f[now]+f[nt[now][j]])%mod;else f[now]=(f原创 2020-08-24 22:13:42 · 323 阅读 · 0 评论