日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

SPOJ 1811. POJ 2774 . 最大公共子串

發布時間:2025/3/15 编程问答 22 豆豆
生活随笔 收集整理的這篇文章主要介紹了 SPOJ 1811. POJ 2774 . 最大公共子串 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Description

給出兩個字符串 a,b ,求 a 和 b 的最大公共子串,字符串長度為 500000。

Solution

  • 可以用后綴數組做,將兩個字符串接起來,中間用特殊的分隔符相連。

  • 求出 Height 數組之后,就可以利用 Height 數組的性質進行計算了!

  • 對于一個 i ,如果 sa[i]sa[i?1] 的位置分別屬于 ab ,那么 height[i] 就是合法的。

  • 求最大值即可。時間復雜度 O(N?log?N)

Code

#include<cstdio> using namespace std; const int N=5e5+5; int n,m=27,len,ans; int sa[N],rank[N],r1[N],height[N],tax[N]; int s[N]; inline void readln() {char ch=getchar();while(ch<'a' || ch>'z') ch=getchar();while(ch>='a' && ch<='z') s[++n]=ch-'a'+1,ch=getchar(); } inline void csort() {for(int i=1;i<=m;i++) tax[i]=0;for(int i=1;i<=n;i++) tax[rank[i]]++;for(int i=1;i<=m;i++) tax[i]+=tax[i-1];for(int i=n;i;i--) sa[tax[rank[r1[i]]]--]=r1[i]; } inline void SA() {for(int i=1;i<=n;i++) rank[r1[i]=i]=s[i];csort();for(int j=1,p=0;j<=n;j<<=1,m=p,p=0){for(int i=n-j+1;i<=n;i++) r1[++p]=i;for(int i=1;i<=n;i++)if(sa[i]>j) r1[++p]=sa[i]-j;csort();for(int i=1;i<=n;i++) r1[i]=rank[i];rank[sa[1]]=p=1;for(int i=2;i<=n;i++)rank[sa[i]]=(r1[sa[i]]==r1[sa[i-1]] && r1[sa[i]+j]==r1[sa[i-1]+j])?p:++p;}for(int i=1,lcp=0;i<=n;height[rank[i++]]=lcp){if(lcp) lcp--;while(s[i+lcp]==s[sa[rank[i]-1]+lcp]) lcp++;} } int main() {readln(),s[len=++n]=m,readln(),SA();for(int i=2;i<=n;i++)if(height[i]>ans && sa[i]<len^sa[i-1]<len) ans=height[i];printf("%d",ans);return 0; }

總結

以上是生活随笔為你收集整理的SPOJ 1811. POJ 2774 . 最大公共子串的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 日日狠狠久久 | 色94色欧美sute亚洲线路二 | 日韩专区一区 | 日韩专区视频 | 日韩欧美一区二区三区在线 | 麻豆国产一区二区 | 人妻互换一区二区激情偷拍 | 国产一级大片在线观看 | 国产chinasex麻豆videos | 2021av视频| 91久久精品www人人做人人爽 | 动漫av在线 | 天堂8在线视频 | 女人叫床很黄很污句子 | 国产日韩一区二区三免费高清 | 欧美色图一区二区 | 一级黄色av片 | 激情免费视频 | 欧美性生交xxxxx久久久缅北 | 红桃视频在线播放 | 久久免费看少妇 | 国产精品黄视频 | 久久精品国产精品亚洲色婷婷 | 日韩激情视频在线 | 欧美成本人视频 | 国产真实交换夫妇视频 | 高清日韩一区 | 亚洲精品88| 一区二区三区四区人妻 | 青青操国产视频 | 中文字幕第80页 | 日本美女性爱视频 | 久久国产一级 | 新97超碰| 久草97| 精品在线视频一区二区三区 | 樱花电影最新免费观看国语版 | 噜噜噜在线 | 欧美日韩一区二区三区四区五区六区 | 少妇xxxx| 欧美男女啪啪 | 日日干夜夜骑 | 一本色道久久hezyo加勒比 | 调教撅屁股啪调教打臀缝av | 久久亚洲一区二区三区四区五区 | 99国产在线视频 | japanesehdxxxx | 17草在线| 亚洲午夜激情视频 | 日本一区不卡在线 | 在线观看免费国产视频 | 啪在线视频 | 日韩永久 | 一区二区三区激情 | 性欧美8khd高清极品 | 国产在线视视频有精品 | 亚洲精品白浆高清久久久久久 | jiizzyou欧美2| 波多野结衣在线一区二区 | 欧美精品一区二区三区在线播放 | 久久久久久久一区二区 | 一区二区欧美日韩 | 三上悠亚ssⅰn939无码播放 | 午夜你懂的 | 91免费版黄 | 伊人久久精品视频 | 97超碰人人看 | 美女少妇av | 在线免费观看日韩视频 | 激情四射婷婷 | 日日夜夜噜 | 96毛片| 在线免费观看亚洲视频 | 97xxxx| 国产在线a视频 | 老司机在线观看视频 | 免费人成网站 | 久久精品国产亚洲AV无码麻豆 | 欧美黄色激情视频 | 致单身男女免费观看完整版 | xxx视频网站| 日韩七区| 91狠狠 | 黄色av导航 | 香蕉久久夜色精品国产使用方法 | 久久爱影视 | 精品一区二区三区在线观看 | 羞羞的视频在线观看 | 五月婷婷小说 | 欧美理论视频 | 三级4级全黄60分钟 成人自拍视频 | 91免费视频网站 | 美女免费黄视频 | 中文字幕三级视频 | 日韩av电影一区 | 美女扒开粉嫩尿口 | 亚洲天堂视频网 | 在线色亚洲 | 三上悠亚久久 |