字符串-----kmp,AC自动机
文章平均质量分 68
orz11111111
这个作者很懒,什么都没留下…
展开
-
Query on a string 暴力+树状数组
题意:给出母串s和字符串T,Q次操作. 操作1:把s的第i个字符修改为ch. 操作2:询问s[i,j]中,T出现了多少次? Q,|s| 令f[i]标记s[i]结尾能否匹配字符串T.对于查询操作只要query(l+len2-1,r) 因为还有修改操作,又因为|T| f[i]的前缀和是变化的 用树状数组来维护即可.O(Q*|T|^2*logn). #include using n原创 2017-09-15 14:19:46 · 160 阅读 · 0 评论 -
HDU 5510 Bazinga 双指针+KMP.
题意:n个string s[i],若第i个string是合法的 则存在(1 n 暴力配的话O(n^2*len) len最坏为1e6.TLE. 双指针:s[l],s[r]为当前待匹配的两个串 当s[l]==s[r] l++; 当s[l]!=s[r] 则r为一个可行解 r++ . r+1不用再考虑l之前的串 s[j]为s[l]之前的某个串.并且s[j]肯定为[l,r)内某个串的子串. 若原创 2017-09-18 20:09:23 · 359 阅读 · 0 评论 -
HDU 6208 The Dominator of Strings AC自动机
题意:长度最长串为母串 问其余n-1个串是否都能在母串中匹配 ,总字符长度 AC自动机匹配数为n则有解. query时不重复统计以标记结点. #include using namespace std; typedef long long ll; const int N=1e5+20,M=1e5+5; struct AHO { int chd[N][26],v[N],f[N],last[原创 2017-09-18 08:15:56 · 385 阅读 · 0 评论