亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 學院 > 開發設計 > 正文

|算法討論|AC自動機 學習筆記

2019-11-11 03:48:15
字體:
來源:轉載
供稿:網友

在學習AC自動機之前需要熟練掌握WA自動機、RE自動機與TLE自動機

模板題:Hdu 2222 KeyWords Search,解決先給出關鍵字后,再給出尋找文本進行匹配問題

#include<cstdio> #include<algorithm> #include<cstring> #include<queue> #define ms(i,j) memset(i,j, sizeof i); using namespace std;const int MAXN = 10000 + 5, _SIZE = 26; int n;struct acam{ int sz;//結點編號 int res; int ch[MAXN*51][_SIZE];//Tire int last[MAXN*51];//后綴鏈接 int f[MAXN*51];//失配函數 int val[MAXN*51][2];//結點的權值 bool used[MAXN*51];//用過 void init()//初始化 { ms(val,0); ms(ch,0); ms(used,false); sz = 1; res = 0; } void insert(char *s, int v)//插入一個模板 { int u = 0; int len = strlen(s); for (int i=0;i<len;i++) { int c = s[i] - 'a'; if (ch[u][c]) { u = ch[u][c]; } else { ch[u][c] = ++sz; u = ch[u][c]; } if (i==len-1) { val[u][0] = v; val[u][1]++; } } } void g(int j)//遞歸更新cnt { if (j&&!used[val[j][0]]) { res+=val[j][1]; used[val[j][0]] = true; g(last[j]); } } void find(char *T)//在T中匹配 { int len = strlen(T); int j = 0; for (int i=0;i<len;i++) { int c = T[i] - 'a'; j = ch[j][c]; if (val[j][0]) g(j); else if (last[j]) g(last[j]); } } void getFail()//獲得失配函數 { queue<int> q; f[0] = 0; for (int c=0;c<_SIZE;c++)//初始化進隊 { int u = ch[0][c]; if (u) { q.push(u); f[u] = 0; last[u] = 0; } } while (!q.empty()) { int r = q.front(); q.pop(); for (int c=0;c<_SIZE;c++) { int u = ch[r][c]; if (!u) { ch[r][c] = ch[f[r]][c]; continue; } q.push(u); int j = f[r]; while (j&&!ch[j][c]) j = f[j]; f[u] = ch[j][c]; last[u] = (val[f[u]][0]) ? (f[u]) : (last[f[u]]); } } } }ac;char s[1000000 + 5];int main() { int kase; scanf("%d", &kase); while (kase--) { ac.init(); scanf("%d", &n); for (int i=1;i<=n;i++) { scanf("%s", s); ac.insert(s,i); } scanf("%s", s); ac.getFail(); ac.find(s);
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
国产日韩在线播放| 久久久久久国产精品| 色偷偷综合社区| 国产精品一区二区三区在线播放| 欧美日韩中国免费专区在线看| 成人妇女淫片aaaa视频| 国产主播精品在线| 在线丨暗呦小u女国产精品| 欧美老女人bb| 91免费国产网站| 日韩免费中文字幕| 国产99视频在线观看| 97在线日本国产| 日韩av电影免费观看高清| 国产+成+人+亚洲欧洲| 日韩中文字幕不卡视频| 欧美第一淫aaasss性| 91久久精品国产| 国产主播在线一区| 亚洲精品美女网站| 亚洲国产精品va在线看黑人| 一本色道久久88精品综合| 成人亚洲激情网| 国产欧美日韩91| 69av在线视频| 亚洲一区二区在线| 国产精品r级在线| 精品国偷自产在线视频| 人九九综合九九宗合| 国产精品久久久久久久9999| 最近中文字幕mv在线一区二区三区四区| 久久99国产精品自在自在app| 久久成人精品视频| 国产精品人成电影在线观看| 欧美一区二三区| 亚洲精品乱码久久久久久金桔影视| 欧美精品久久一区二区| 精品无码久久久久久国产| 国产一区视频在线播放| 精品少妇v888av| 国产视频综合在线| 亚洲视频在线看| 有码中文亚洲精品| 亚洲无限av看| 夜夜狂射影院欧美极品| 亚洲欧美精品中文字幕在线| 川上优av一区二区线观看| 久久精品视频在线观看| 亚洲一区二区三区毛片| 欧美野外猛男的大粗鳮| 国产国语videosex另类| 日韩欧美极品在线观看| 高跟丝袜欧美一区| 亚洲自拍小视频免费观看| 国产精品aaa| 91产国在线观看动作片喷水| 欧美激情国产精品| 欧美激情2020午夜免费观看| 伊人久久久久久久久久久久久| 不卡av日日日| 久久中文字幕在线| 久久天天躁狠狠躁夜夜爽蜜月| 亚洲精品suv精品一区二区| 在线电影中文日韩| 亚洲欧美国产一本综合首页| 中文字幕欧美在线| 中文字幕欧美日韩| 国产成人aa精品一区在线播放| 色偷偷av一区二区三区乱| 成人国产精品一区二区| 欧美激情在线一区| 久久全国免费视频| 国产精品久久久av久久久| 一个色综合导航| 久久久久国产精品免费网站| 久久国产精品电影| 国产精品草莓在线免费观看| 国语自产精品视频在免费| 欧美另类99xxxxx| 亚洲第一免费播放区| 亚洲一区二区久久久| 国产精品久久久久免费a∨大胸| 亚洲欧美激情视频| 91日本在线观看| 欧美在线一级va免费观看| 欧美人与性动交| 日韩精品视频免费专区在线播放| 中文字幕欧美日韩在线| www.亚洲人.com| 国产精品成人av性教育| 国产精品jizz在线观看麻豆| 乱亲女秽乱长久久久| 欧美日韩免费区域视频在线观看| 日韩麻豆第一页| 97精品国产97久久久久久| 亚洲自拍欧美另类| 亚洲人成电影网站| 国产精品久久久久久久久久久新郎| 亚洲免费福利视频| 国产69精品久久久久99| 亚洲精品一区av在线播放| 91久久精品国产91久久性色| 一本一本久久a久久精品牛牛影视| 欧美在线视频一区二区| 欧美在线视频免费| 亚洲精品国精品久久99热| 日韩免费观看网站| 亚洲无亚洲人成网站77777| 成人在线播放av| 奇米4444一区二区三区| 精品久久国产精品| 高清欧美性猛交xxxx| 国产精品一区二区三区成人| 亚洲精品免费一区二区三区| 国产小视频91| 69视频在线播放| 欧洲日本亚洲国产区| 中文字幕视频一区二区在线有码| 国产不卡精品视男人的天堂| 亚洲国产成人在线视频| 米奇精品一区二区三区在线观看| 亚洲欧美日韩天堂一区二区| 日韩欧美aⅴ综合网站发布| 日韩亚洲精品电影| 亚洲成人久久久久| 欧美性生交大片免费| 55夜色66夜色国产精品视频| 91精品在线影院| 欧美精品www在线观看| 日本不卡视频在线播放| 日韩国产在线播放| 懂色av中文一区二区三区天美| 欧美日韩一区二区三区在线免费观看| 国产suv精品一区二区三区88区| **欧美日韩vr在线| 91av网站在线播放| 影音先锋欧美精品| 欧美综合第一页| 亚洲天堂第二页| 97精品国产aⅴ7777| 亚洲a中文字幕| 欧美精品电影免费在线观看| 亚洲最新av在线网站| 一本久久综合亚洲鲁鲁| 国产高清视频一区三区| 91国语精品自产拍在线观看性色| 欧美性受xxxx白人性爽| 国产精品海角社区在线观看| 国产精品久久久久久久久粉嫩av| 欧美怡红院视频一区二区三区| 国产精品久久久久久av| 亚洲欧洲美洲在线综合| 91亚洲精品一区| 欧美精品久久久久久久免费观看| 国产精品久久久久久久久借妻| 欧美在线视频网站| 亚洲欧美在线免费| 一区二区日韩精品| 亚洲**2019国产| 九色精品美女在线| 国产精品影片在线观看| 欧美成人精品一区| 欧美性猛交xxxx乱大交蜜桃| 亚洲精品国精品久久99热一|