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

歡迎訪問 生活随笔!

生活随笔

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

编程问答

Codeforce-126B:Password(KMP模板题)

發布時間:2024/3/26 编程问答 49 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Codeforce-126B:Password(KMP模板题) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.


題目鏈接:點擊打開鏈接


題目大意:

給你一個串,讓你求這個串的一個同時是前綴,后綴(這個說法好像不太對)且在串中出現過的最長子串。

舉個例子:

對于串 fixprefixsdfix 就應該輸出fix.


解題思路:

首先這個串同時是前綴和后綴,那么自然就想到了kmp算法中的next數組。因為next數組的值正好符合題目最長要求。但是同時要求這個串在整個串中間出現過,那就暴力枚舉一發即可,將所有可能的長度都枚舉一遍,這時候我們就發現,你每次枚舉的長度其實是用next數組在跳躍的,具體還是要理解清楚next數組的性質。

其次要說明一點就是,這個串可以部分與前綴和后綴重合但不能完全重合(這不廢話嘛),例如 papapapap 答案是 papap 。就在kmp模板里稍微改一下即可。

以下貼代碼,



#include <iostream> #include <cstdio> #include <cstring> #include <cstdlib> #include <cmath> #include <vector> #include <queue> #include <map> #include <algorithm> #include <stack> #include <set> #include <functional> #define rank ra #define next ne #define pb push_back #define hash haha #define lson rt<<1 #define rson rt<<1|1 #define xlson xl,xmid,xt<<1 #define xrson xmid+1,xr,xt<<1|1 #define ylson yl,ymid,xt,yt<<1 #define yrson ymid+1,yr,xt,yt<<1|1 using namespace std; typedef long long ll; char a[1000005]; char t[1000005]; int next[1000005]; int ans,n; void get_next(char a[]) {int l=strlen(a);int i=0;int j=-1;next[0]=-1;while(i<l){if(j==-1||a[i]==a[j]){i++;j++;next[i]=j;}elsej=next[j];} } int kmp(char s[],char t[]) //kmp模板 {int ls=strlen(s);int lt=strlen(t);int j=0;int i=0;get_next(s);while(i<lt&&j<ls){if(j==-1||s[j]==t[i]){i++;j++;if(j==ls&&i==j) //匹配成功但是是前綴繼續匹配j=next[j];}elsej=next[j];}if(j==ls&&i!=lt) //匹配成功且不是后綴return 1;return 0; } int main() {while(scanf(" %s",a)!=EOF){get_next(a);int l=strlen(a);int k=next[l];ans=0;for(int i=k;i>=0;i=next[i]) //枚舉所有可能長度{for(int j=0;j<i;j++)t[j]=a[j];t[i]='\0';if(kmp(t,a)){ans=i;break;}}if(ans==0)printf("Just a legend\n");else{for(int i=0;i<ans;i++)printf("%c",a[i]);printf("\n");}} }

總結

以上是生活随笔為你收集整理的Codeforce-126B:Password(KMP模板题)的全部內容,希望文章能夠幫你解決所遇到的問題。

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

主站蜘蛛池模板: 欧美黄色一级片视频 | 成人免费在线网址 | www.午夜激情| 国产欧美日本在线 | 免费黄色av网站 | 国毛片| 无码人妻精品一区二区三区99不卡 | 亚洲伦理在线播放 | 成人一级生活片 | 台湾佬中文在线 | 他揉捏她两乳不停呻吟动态图 | 国产黄色片视频 | 72种无遮挡啪啪的姿势 | 日韩高清不卡一区 | 2021毛片| 中文字幕人妻丝袜二区 | 成年人黄色录像 | 日本中文字幕免费观看 | 免费三片在线视频 | 成人片在线播放 | 国产粉嫩在线观看 | 久久久久久无码午夜精品直播 | 黄色片在线视频 | 欧美日韩亚洲国产 | 色女人综合 | 又黄又免费的视频 | 精品久久亚洲 | 日日干日日摸 | 欧美h视频在线观看 | 青青99| 在线观看av大片 | 免费成人91 | 青青视频网 | 日本少妇大战黑人 | 国产叼嘿视频在线观看 | 青青草成人影视 | 波波野结衣 | 激情av中文字幕 | 国产欧美一区二区三区在线看蜜臀 | 钰慧的mv视频在线观看 | 福利视频精品 | 精品视频免费看 | 精品在线小视频 | 亚洲激情欧美色图 | 青青免费在线视频 | 九九九久久久精品 | 美女尿尿网站 | 日本xxx在线观看 | 亚洲一区二区视频在线 | 亚洲av无码专区国产乱码不卡 | 免费av福利| 99草| 97精品人人a片免费看 | 特淫毛片 | 精品人妻久久久久一区二区三区 | 夜夜嗨av禁果av粉嫩av懂色av | www香蕉| av免| 亚洲自拍偷拍精品 | 久色成人网 | 日本美女逼 | 91免费在线播放 | 在线免费观看一级片 | 直接看的av网站 | aa一级视频 | 蜜臀免费av | 久久精品网 | av网站大全在线 | 欧美福利视频一区二区 | 国产成人黄色av | 伊人网视频 | 国产另类精品 | 久久人妻少妇嫩草av无码专区 | 美女在线不卡 | 亚洲播放器| 啪在线视频| 成人一区二区在线观看 | 国产性按摩 | 久久高清无码视频 | 超碰在线小说 | 国产亚洲精品精品精品 | 精品久久久精品 | 91视频在线网站 | 女人被狂躁60分钟视频 | 成年人免费网站 | 亚洲精品lv | 男人的天堂2019 | 波多野结衣一区二区三区免费视频 | 日韩欧美一级片 | 国产在线喷水 | 成人a免费 | 伊人888| 国精无码欧精品亚洲一区蜜桃 | 黄网站欧美内射 | 三上悠亚一区二区在线观看 | 国产传媒一区二区三区 | 亚洲av无码乱码在线观看性色 | 久久青草免费视频 | 97国产精东麻豆人妻电影 |