字符串处理
touso
这个作者很懒,什么都没留下…
展开
-
最长回文(Manacher算法)HDU - 3068
给出一个只由小写英文字符a,b,c…y,z组成的字符串S,求S中最长回文串的长度. 回文就是正反读都是一样的字符串,如aba, abba等 Input 输入有多组case,不超过120组,每组输入为一行小写英文字符a,b,c…y,z组成的字符串S 两组case之间由空行隔开(该空行不用处理) 字符串长度len <= 110000 Output 每一行一个整数x,对应一组case,表示该组ca...原创 2019-08-19 16:09:31 · 168 阅读 · 0 评论 -
HDU 1238
Substrings 题意:给出一些字符串,找出公共最长的子串,这个子串可以是倒序的。 思路:暴力kmp,从第一个字符串开始,枚举其所有字串,与后面的字符串匹配,每次匹配更新最长子串 #include<stdio.h> #include<string.h> #include<string> #include<iostream> #include<algorithm> using namespace std; int nxt[10101]; void原创 2020-09-26 14:57:02 · 179 阅读 · 0 评论 -
模板kmp
void get() { int i=0,j=-1; net[0]=-1; while(i<pl) { if(p[i]==p[j]||j==-1) net[++i]=++j; else j=net[j]; } } int kmp() { int i=0,j=0,ans=0; while(i<sl&&j<pl) { if(j==-1||s[i]==p[j]) { i++; j++; } else j=net[j];原创 2020-08-13 21:38:21 · 154 阅读 · 0 评论