字符串---KMP
小松萘
厉害的人可真多啊
展开
-
CodeForces - 1138D Camp Schedule(KMP,构造)
???? ???? ????因为计算子串的时候是可覆盖的,如ababab中有两个abab,所以构造的时候应该根据nxt数组的性质来构造,每次贪心的跳到nxt[ j ]int sum[2];string s,t;int nxt[MAXN];void get_nxt(const string & x){ nxt[0]=-1; int i=0,j=-1; int n=sz(x)...原创 2020-02-22 15:42:32 · 140 阅读 · 0 评论 -
POJ - 1226 Substrings (KMP,枚举)
???? ???? ????毫无任何技巧的枚举。。。(然而代码还是写的很丑int n,tag;string s[1111];int nxt[2][MAXN];bool kmp(string h,string p,int k){ int i=0,j=0; while(i<sz(p)&&j<sz(h)) { if(j<0||h[j]=...原创 2020-02-21 16:40:45 · 92 阅读 · 0 评论 -
HDU - 3336 Count the string(NXT数组,DP)
???? ???? ????(1)求每个前缀在字符串中出现的次数 ----> 枚举每个位置结尾的字符串中有多少前缀,求和(2) i 位置能匹配的最长前缀(除1~i这个串以外)为nxt[ i ],dp[ i ] = dp[nxt[ i ] ] + 1;char a[MAXN];int n,dp[MAXN],nxt[MAXN];void get_nxt(){ nxt[0]=-1; ...原创 2020-02-18 11:34:41 · 142 阅读 · 0 评论