![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
扩展kmp
吴俊达9812
这个作者很懒,什么都没留下…
展开
-
hdu 2087
题意:一块花布条,里面有些图案,另有一块直接可用的小饰条,里面也有一些图案。对于给定的花布条和小饰条,计算一下能从花布条中尽可能剪出几块小饰条来呢? 思路:扩展kmp可以方便地找出一个字符串在另一个字符串中所有出现的位置。 #include<bits/stdc++.h> using namespace std; const int maxn=1005; int ne[maxn];...原创 2019-10-08 12:15:20 · 182 阅读 · 0 评论 -
hdu 1686
题意:求一个串在另一个串出现的次数 思路:扩展kmp裸题 #include<bits/stdc++.h> using namespace std; const int maxn=1000005; int ne[maxn]; int extend[maxn]; char S[maxn],T[maxn]; void getNext(char *str) { int len=s...原创 2019-10-08 15:34:47 · 146 阅读 · 0 评论 -
hdu 4300
裸exkmp #include <bits/stdc++.h> using namespace std; const int maxn = 100005; int mp[26]; char str2[maxn],str1[maxn],str3[maxn]; int ne[maxn]; int extend[maxn]; char S[maxn],T[maxn]; void getN...原创 2019-10-08 22:32:51 · 220 阅读 · 0 评论 -
hdu 1238
题意:找出最长的一个子串,所有串中都出现过它或它的逆序 思路:直接枚举子串的开头,然后用exkmp找最长的匹配长度。这题告诉我们exkmp找匹配长度好强。 #include <bits/stdc++.h> using namespace std; const int maxn = 105; vector<string> ve; char str1[maxn],str2...原创 2019-10-09 12:00:23 · 113 阅读 · 0 评论