日本搞逼视频_黄色一级片免费在线观看_色99久久_性明星video另类hd_欧美77_综合在线视频

國(guó)內(nèi)最全I(xiàn)T社區(qū)平臺(tái) 聯(lián)系我們 | 收藏本站
阿里云優(yōu)惠2
您當(dāng)前位置:首頁(yè) > php開源 > php教程 > POJ2752 Seek the Name, Seek the Fame

POJ2752 Seek the Name, Seek the Fame

來(lái)源:程序員人生   發(fā)布時(shí)間:2016-07-07 08:46:49 閱讀次數(shù):2455次

問(wèn)題鏈接:POJ2752 Seek the Name, Seek the Fame。

讀懂題后知道,這個(gè)題要算的是,給定1個(gè)字符串s,有哪些長(zhǎng)度的s的前綴,同時(shí)也是s的后綴。

首先明確1下前綴和后綴的概念。字符串s的前綴是指,從s的開始字符到s的任意字符為止的子串。字符串s的后綴是指,從s的任意字符到s的最后字符為止的子串。s是既是本身的前綴也是本身的后綴。

這個(gè)問(wèn)題利用KMP算法的next[]數(shù)組來(lái)解。首先對(duì)輸入的字符串s,計(jì)算其next[]數(shù)組。然后,根據(jù)next[]數(shù)組的值進(jìn)行進(jìn)1步的計(jì)算。

還需要知道的是next[]數(shù)組的定義。對(duì)字符串s的第i個(gè)字符s[i],next[i]定義為字符s[i]前面最多有多少個(gè)連續(xù)的字符和字符串s從初始位置開始的字符匹配。

從后到前匹配前綴和后綴。如果前綴與后綴匹配,則下1個(gè)前綴與后綴匹配的字符串只能在前綴中。

AC程序以下:

/* POJ2752 Seek the Name, Seek the Fame */ #include <stdio.h> #include <string.h> char s[400000+1]; int next[400000+1]; int result[400000+1]; void setnext(char s[], int next[], int len) { next[0] = ⑴; int i = 0, j = ⑴; while (i < len) { if (j == ⑴ || s[i] == s[j]) { ++i; ++j; next[i] = j; } else j = next[j]; } } int main(void) { int count, t, i; while(scanf("%s", s) != EOF) { int len = strlen(s); // 計(jì)算next[]數(shù)組值 setnext(s, next, len); // 計(jì)算結(jié)果:從字符串的尾部開始,下1個(gè)只能在與后綴相同的前綴字符串中 count = 0; t = next[len - 1]; while(t != ⑴) { if(s[t] == s[len - 1]) result[count++] = t + 1; t = next[t]; } // 輸出結(jié)果 for(i=count⑴; i>=0; i--) printf("%d ", result[i]); printf("%d\n", len); } return 0; }


生活不易,碼農(nóng)辛苦
如果您覺(jué)得本網(wǎng)站對(duì)您的學(xué)習(xí)有所幫助,可以手機(jī)掃描二維碼進(jìn)行捐贈(zèng)
程序員人生
------分隔線----------------------------
分享到:
------分隔線----------------------------
關(guān)閉
程序員人生
主站蜘蛛池模板: 国产精品久久久久7777婷婷 | 在线免费日韩 | 精品国产成人 | 国产97人人超碰caoprom | 婷婷丁香激情 | a级片一区二区三区 | 国产高清一区二区三区 | 国产精品9 | 成人二区 | 国产精品原创视频 | 精品在线99 | 久久国产精品二国产精品 | 国产精品久久久久久久久久大牛 | 日韩视频网站在线观看 | 欧美一级免费大片 | av大片网站 | 日韩在线视频网 | 久久综合色婷婷 | 久久久久福利视频 | 亚洲一区二区三区在线看 | 国产九九热 | 国产日产久久高清欧美一区 | 黄色的网站在线观看 | 精品三级久久久 | 免费av在线播放 | 精品视频亚洲 | 爱爱视频毛片 | 欧美a级成人淫片免费看 | 久久成人国产精品入口 | 日韩av中文 | 中国一级黄色大片 | 国产69精品久久久久777 | 欧美国产在线视频 | 超黄网站在线观看 | 欧洲一区 | a中文字幕在线 | 亚洲网站在线观看 | 日韩欧美在线免费观看视频 | 人人综合 | 成人在线免费视频 | 欧美性一区 |