本来easy的KMP 却一直过不了洛谷的模板题。。。 仔细一看原来在输出next数组时打的回车而不是空格。。。 身败名裂。。。 话说有个sunday貌似一般状况下比KMP快呢。。。去看看2333 ...
分类:
其他好文 时间:
2017-05-02 19:51:52
阅读次数:
139
【BZOJ1009】[HNOI2008]GT考试 Description 阿申准备报名参加GT考试,准考证号为N位数X1X2....Xn(0<=Xi<=9),他不希望准考证号上出现不吉利的数字。他的不吉利数学A1A2...Am(0<=Ai<=9)有M位,不出现是指X1X2...Xn中没有恰好一段等于 ...
分类:
编程语言 时间:
2017-05-01 14:16:06
阅读次数:
177
http://acm.hdu.edu.cn/showproblem.php?pid=5763 题意: 给出一个字符串和一个模式串,模式串有两种意思,问这句话有几种意思。 思路:因为肯定要去字符串去找模式串,所以首先用KMP计算next数组,然后用动态规划,d[i]表示分析到第i个字符时有多少种意思。 ...
分类:
其他好文 时间:
2017-04-27 14:47:49
阅读次数:
139
"部分匹配值"是"前缀"和"后缀"的最长的共有元素的长度。以"ABCDABD"为例, - "A"的前缀和后缀都为空集,共有元素的长度为0; - "AB"的前缀为[A],后缀为[B],共有元素的长度为0; - "ABC"的前缀为[A, AB],后缀为[BC, C],共有元素的长度0; - "ABCD" ...
分类:
编程语言 时间:
2017-04-13 22:25:57
阅读次数:
251
Power Strings Time Limit: 3000MS Memory Limit: 65536K Total Submissions: 47748 Accepted: 19902 Description Given two strings a and b we define a*b to ...
分类:
其他好文 时间:
2017-04-12 22:51:30
阅读次数:
191
这题有点坑啊. 题解: 首先根据KMP的next数组可以构造出一棵树,可以看出,题目要求的是num是一个点往上走的第一个长度小于i/2的节点(设为ti)的深度. 于是可以先求每个节点的深度 再脑补出一个倍增+二分的做法. 然后就T得很惨.(1e6的nlog2n,极限数据4s). 再观察,发现我们要求 ...
分类:
其他好文 时间:
2017-03-13 15:06:03
阅读次数:
251
比赛链接 A题是KMP,先把A拼接到B的后面,然后利用next数组的意义(包括其具体含义,以及失配时的应用),得到ans 1 #include<bits/stdc++.h> 2 using namespace std; 3 4 char T[200005],S[200005]; 5 int tlen ...
分类:
其他好文 时间:
2017-03-12 17:47:01
阅读次数:
186
参考资料:http://blog.csdn.net/v_july_v/article/details/7041827#t10 3.3.6 基于《最大长度表》与基于《next 数组》等价 我们已经知道,利用next 数组进行匹配失配时,模式串向右移动 j - next [ j ] 位,等价于已匹配字符... ...
分类:
编程语言 时间:
2017-03-12 13:18:25
阅读次数:
185
比如有模式串 t="aaaab" 那么执行过程是这样的: i=1,j=0,next[1]=0; //初始化i,j的值 [规则1:根据如果j==0或者t[i]=t[j]则i++,j++,否则j=next[j] [规则2:如果t[i]==t[j] next[i]=next[j]否则 next[i]=j] ...
分类:
编程语言 时间:
2017-02-26 14:23:52
阅读次数:
159
题意:给定一个长度为M的字符串A,求长度为N的字符串中,子串中不包含A的字符串的数量,其中字符串仅由‘0’-‘9’组成。 题解:设f[i][j]=长度为i最后几位能匹配A的前j个字符的字符串种数,那么每往后添加一个字符,能转移到的位置通过KMP的Next数组很轻松就能找到。那么我们就能构造出来一个矩 ...
分类:
其他好文 时间:
2017-02-26 08:05:24
阅读次数:
197