字符串
再远不过PC
这个作者很懒,什么都没留下…
展开
-
字符串 KMP HDU 1711
KMP 入门 以下面数据为例子 13 5 a[] = 1 2 1 2 3 1 2 3 1 3 2 1 2 b[] = 1 2 3 1 3 (1)构造next表 b[] = 1 2 3 1 3 next[] = 0 0 0 1 0 (2)匹配a[] i = 1 2 3 4 5 6 7 8原创 2016-08-09 12:00:56 · 259 阅读 · 0 评论 -
字符串 KMP HDU 4749
#include #include /* 10 5 10 2 4 2 4 2 4 2 4 2 4 1 2 1 2 1 题目大意:给一个N,M,K,序列a[],b[],在a[]中找出,和b[]相对大小一样的子序列 求序列的个数(序列不能重复) 思路:KMP,找到满足条件,跳到i+m处 继续往下搜 主要难点在于,如何判断满足条件。 我们只要比较i之前a中a[i]的个数和B中B[i]的个数是转载 2016-08-09 16:05:11 · 315 阅读 · 0 评论 -
字符串 KMP HDU 1686
#include #include /* 3 BAPC BAPC AZA AZAZAZA VERDI AVERDXIVYERDIAN 水题KMP */ const int M = 10005; const int N = 1000005; char a[N],b[M]; int next[M];//一个没注意写成char 查了半天 int lena,lenb; void getNext原创 2016-08-09 19:38:58 · 322 阅读 · 0 评论 -
字符串 KMP HDU 2087
#include #include /* abcde a3 aaaaaa aa # 水题KMP */ const int M = 1005; const int N = 1005; char a[N],b[M]; int next[M]; int lena,lenb; void getNext() { int j=-1;next[0]=-1; for(int i=1;i<lenb;i原创 2016-08-09 22:22:03 · 278 阅读 · 0 评论 -
字符串 KMP入门,讲解
非常好的 讲解 链接。非常通俗->http://blog.csdn.net/yearn520/article/details/6729426原创 2016-08-10 11:02:53 · 473 阅读 · 0 评论 -
字符串 KMP HDU 3746
#include #include /* 3 aaa abca abcde KEY:next数组的运用。 题意:求需要添加几个字母构成一个循环字符串 思路:KMP,求next数组后 ,n-next[n] 为最优循环节 */ const int N = 100005; char b[N]; int next[N]; int len; void getNext() { int j=-1;nex原创 2016-08-10 11:40:13 · 281 阅读 · 0 评论 -
字符串 KMP HDU 2594
#include #include #define min(a,b) ((a)<(b)?(a):(b)) /* clinton homer riemann marjorie 题意: 前缀和后缀 的最长匹配 思路:KMP ,将前一个串和后一个串链接起来,求next[n]就是答案 */ const int N = 50005; char a[N],b[N],c[2*N]; int next原创 2016-08-10 12:48:51 · 357 阅读 · 0 评论 -
字符串 KMP POJ 2406
#include #include #define min(a,b) ((a)<(b)?(a):(b)) /* abcd aaaa ababab . 题意: 求最小循环节的个数 思路:KMP ,最小循环节 = n-next[n] */ const int N = 1000005; char b[N]; int next[N];//注意 int len; void getNext()原创 2016-08-10 13:04:07 · 377 阅读 · 0 评论 -
字符串 manacher 最长回文子串
学习一下: 这个感觉好理解一些→戳这里 这个代码比较好→戳这里 题目:hdu3068 最终id 的值为 找到的最大回文的中间值(扩展后的坐标,即 还没 除2) maxlen-1为 最大回文长度 1.如果要求,回文长度最长,且下标最后?那就是下面的代码 2.如果要求,回文长度最长,且要首次出现的?那就把串预处理,倒转一下 函数: reverse( str.begin(),str.end原创 2016-09-28 13:02:24 · 272 阅读 · 0 评论