
扩展KMP
H_ang
记录一些东西吧!
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
HDU - 2594 扩展KMP:s1的前缀和s2的后缀的最长公共长度
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2594题目大意:就是求s1的前缀和s2的后缀的最长公共长度。扩展KMP的extend[i]含义:定义母串S,和字串T,设S的长度为n,T的长度为m,求T与S的每一个后缀的最长公共前缀,也就是说,设extend数组,extend[i]表示T与S[ i,n-1 ]的最长公共前缀,Next[i]表示...原创 2019-09-12 18:07:20 · 868 阅读 · 0 评论 -
HDU - 3336 扩展KMP:问所有前缀在字符串出现的次数
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=3336题目大意:问所有前缀出现的次数。思路:求出扩展kmp的Next数组,然后把Next的值全部加起来就是答案.扩展kmp的Next[i]表示的是,以i为开头的后缀,与整个字符串的lcp的长度,那么显而易见,整个字符串长度为1,2,…,Next[i]的前缀在这里都出现了一次,所以此时答案加上Ne...原创 2019-09-12 18:16:55 · 403 阅读 · 0 评论 -
HDU - 1238 KMP:最大公共子串
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1238题目大意:找出最长的一个子串,所有串中都出现过它或它的逆序。这个子串一定在字符串1出现。那么就二分长度枚举字符串1的子串。再用kmp判断是否在其他的字符串存在。#include<bits/stdc++.h>#define LL long longusing namespace...原创 2019-09-12 20:03:48 · 277 阅读 · 0 评论