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

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

【bzoj1355】 Baltic2009

2019-11-14 09:51:01
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友

題意 給定一個(gè)字符串A,求最短的字符串B,使得A是若干個(gè)B連接成的字符串的前綴 若A=abcabcab 則B=abc

求出A串在KMP算法中A的next數(shù)組 設(shè)A的長(zhǎng)度為N 則答案為A的前N-next[N]位 分兩種情況討論: next[N] > N/2 next[N] <= N/2

#include<iostream>#include<cstdio>#include<cstring>#include<string>#include<algorithm>using namespace std;char w[1000005];int n,len_s,len_w,ans,t[1000005];inline void calc_w(){ int j; t[0]=-1; for (int i=0;i<n;i++) { j=t[i]; while(w[i]!=w[j]&j!=-1) j=t[j]; t[i+1]=++j; }}int main(){ cin>>n; scanf("%s",w); calc_w(); for (int i=1;i<=n;i++) cout<<t[i]<<' '; cout<<endl; cout<<n-t[n];}
發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 松原市| 昌乐县| 游戏| 盈江县| 洪泽县| 常宁市| 榆社县| 四会市| 濮阳市| 二连浩特市| 青岛市| 蒙城县| 铅山县| 株洲市| 广元市| 易门县| 临夏县| 九寨沟县| 贵定县| 阜新| 徐水县| 苗栗市| 额尔古纳市| 临泽县| 南汇区| 玛纳斯县| 成都市| 邯郸县| 云霄县| 永仁县| 苍梧县| 上饶县| 夏津县| 长沙市| 安远县| 平乡县| 金湖县| 佳木斯市| 吴旗县| 通化市| 潮州市|