国产探花免费观看_亚洲丰满少妇自慰呻吟_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ā)表
主站蜘蛛池模板: 巫溪县| 奈曼旗| 炉霍县| 万年县| 丹巴县| 盐亭县| 建昌县| 昭觉县| 布拖县| 拉萨市| 丰原市| 厦门市| 页游| 神木县| 无为县| 改则县| 金湖县| 交口县| 子洲县| 汕尾市| 文水县| 东阳市| 广宁县| 洛南县| 平度市| 乡城县| 随州市| 辰溪县| 四会市| 仪征市| 昌吉市| 玉溪市| 田林县| 武川县| 赫章县| 双江| 宜昌市| 丰县| 城步| 剑河县| 清涧县|