国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學(xué)院 > 開發(fā)設(shè)計(jì) > 正文

Bzoj 1355: [Baltic2009]Radio Transmission(kmp)

2019-11-11 07:33:57
字體:
供稿:網(wǎng)友

1355: [Baltic2009]Radio Transmission Time Limit: 10 Sec Memory Limit: 64 MB Description 給你一個(gè)字符串,它是由某個(gè)字符串不斷自我連接形成的。 但是這個(gè)字符串是不確定的,現(xiàn)在只想知道它的最短長度是多少. Input 第一行給出字符串的長度,1 < L ≤ 1,000,000. 第二行給出一個(gè)字符串,全由小寫字母組成. Output 輸出最短的長度 Sample Input 8 cabcabca Sample Output 3 HINT 對于樣例,我們可以利用”abc”不斷自我連接得到”abcabcabc”,讀入的cabcabca,是它的子串

/*kmp.找循環(huán)節(jié)n-next[n].只能感性的認(rèn)識(shí).先記住吧. 不會(huì)證明orz.*/#include<iostream>#include<cstdio>#define MAXN 1000001using namespace std;int l1,ans,next[MAXN];char s[MAXN];int read(){ int x=0,f=1;char ch=getchar(); while(ch<'0'||ch>'9'){if(ch=='-')f=-1;ch=getchar();} while(ch>='0'&&ch<='9') x=x*10+ch-48,ch=getchar(); return x*f;}void kmp(){ int p=0; for(int i=2;i<=l1;i++) { while(p&&s[i]!=s[p+1]) p=next[p]; if(s[i]==s[p+1]) p++; next[i]=p; }
發(fā)表評論 共有條評論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 正宁县| 克拉玛依市| 定南县| 邛崃市| 临高县| 鹤山市| 常山县| 平武县| 罗江县| 绵阳市| 宁乡县| 梓潼县| 梅河口市| 阿拉善盟| 育儿| 什邡市| 额尔古纳市| 通州区| 岳阳县| 青田县| 类乌齐县| 罗定市| 荃湾区| 新丰县| 崇明县| 邹平县| 文昌市| 汤阴县| 巴彦淖尔市| 兴城市| 呼和浩特市| 曲沃县| 丹东市| 克拉玛依市| 宾阳县| 宜兰市| 右玉县| 屯门区| 昌都县| 锡林浩特市| 徐汇区|