当前位置: 首页 > wzjs >正文

做优化网站怎么优化代码高端建站

做优化网站怎么优化代码,高端建站,聊城建设委员会网站,做再生料的网站SAM SAMluogu6640分析优化CF653F分析维护SAM 推销一波前面的文章: SAM详解1 SAM详解2(初级应用) SAM详解3(SAM与AC自动机的相似性,SAM处理字符串匹配) luogu6640 题目链接 给出只包含小写字母 a 和 b 的两个字符串 s , t s,t s,t, q q q 次询问,每次询问 s [ l …

SAM

  • SAM
    • luogu6640
      • 分析
      • 优化
    • CF653F
      • 分析
      • 维护

SAM

推销一波前面的文章:

SAM详解1

SAM详解2(初级应用)

SAM详解3(SAM与AC自动机的相似性,SAM处理字符串匹配)

luogu6640

题目链接

给出只包含小写字母 ab 的两个字符串 s , t s,t s,t q q q 次询问,每次询问 s [ l … r ] s[l…r] s[lr] t t t 的最长公共子串长度。

分析

看到最长公共子串,建出 t t t 的 SAM,然后让 s s s 在上面跑匹配,记跑出来的数组是 s l e n slen slen

然后可以看出答案:

a n s = max ⁡ i = l r min ⁡ ( i − l + 1 , s l e n [ i ] ) ans=\max_{i=l}^r\min(i-l+1,slen[i]) ans=i=lmaxrmin(il+1,slen[i])

于是有了暴力 O ( q n ) O(qn) O(qn) 的做法。

优化

发现括号内的 min ⁡ \min min 不好维护,考虑拆括号。

i − l + 1 < s l e n [ i ] i-l+1<slen[i] il+1<slen[i] 时,有 i − s l e n [ i ] + 1 < l i-slen[i]+1<l islen[i]+1<l

然后有个性质 i − s l e n [ i ] + 1 i-slen[i]+1 islen[i]+1 单调不降。

证明:

回顾 s l e n slen slen 的计算过程:

	for(int i=1,p=1,L=0;i<=n;i++){while(p&&!a[p].ch[s1[i]-'a']){p=a[p].f;L=a[p].len;}if(!p)p=1;elsep=a[p].ch[s1[i]-'a'],L++;slen[i]=L;}

L L L 每次最多增加 1 1 1,或者减少。

i i i 每次稳定增加 1 1 1

得证。

于是可以用二分求出一个

http://www.dtcms.com/wzjs/355100.html

相关文章:

  • 坪地网站制作惠州百度seo地址
  • 做网站的软件帝国百度网页入口官网
  • 小程序微信开发文章优化关键词排名
  • 成都高新区网站建设百度站长工具网站
  • 海络网站高端网站建设哪家便宜
  • 做调查问卷赚钱网站国外专门发广告的app
  • 有什么网站用名字做图片大全保定seo外包服务商
  • 网站制作 台州电子商务网站有哪些?
  • 外语教学网站开发宁波网站推广方式
  • 兰州市城市建设设计院官方网站seo具体seo怎么优化
  • 南宁网站推广哪家好品牌策划方案ppt
  • excel做邮箱网站怎么加3www获客软件
  • 北京做网站的公司哪家好seo关键词使用
  • 安徽安搜做的网站怎么样爱站网站排行榜
  • 如何提高网站打开速度兰州seo实战优化
  • 盐城做网站的百度的seo关键词优化怎么弄
  • 青岛专业做网站的公司信息流优化师工作内容
  • 十款免费软件app下载优化网站制作方法大全
  • 网络营销导向企业网站建设的一般原则包括免费投放广告平台
  • 沈阳建网站电商学生个人网页优秀模板
  • 南汇网站建设长沙网站推广工具
  • html网站尾部怎么做沈阳黄页88企业名录
  • 杭州排名优化公司电话郑州网站优化哪家好
  • 网站开发项目 工作分解图百度搜索风云榜小说总榜
  • 二元期货交易网站开发网络营销的流程和方法
  • 锦州网站制作公司东莞做网站排名优化推广
  • 表情包做旧网站北京seo排名优化网站
  • 长沙做网站有哪些每日军事新闻
  • 转业做网站的工具最常用的搜索引擎有哪些
  • 网站开发人员的职责是什么百度推广教程视频教程