青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

posts - 43,  comments - 9,  trackbacks - 0
字符串少量習(xí)題小結(jié).

spoj694(易) 后綴數(shù)組
求一個字串的不同子串個數(shù).
按rank考慮子串.加入子串S[i]時,獲得了len-Sa[i]個不同子串.但其中height[i]個已經(jīng)屬于S[i-1]了,所以實際子串數(shù)增加了len-Sa[i]-S[i-1]. 順序掃一遍height數(shù)組即得解.

spoj687(中) 后綴數(shù)組
求一個串的重復(fù)次數(shù)最多的連續(xù)重復(fù)子串.
設(shè)周期為L的連續(xù)重復(fù)子串存在,則點0,L,2L,...,kL必能覆蓋到一個完整周期. 因此對L,考察這些點的字符相等情況,LCP情況,可得到L的解.
枚舉L.
復(fù)雜度是O(n/1+n/2+...+n/n) = O(nlogn)

pku3693(中) 后綴數(shù)組
同spoj687,只是結(jié)果還要輸出字典序最小的滿足條件的串.可以借助rank數(shù)組直接比較字典序.只是要注意在考察點kL時,要把以(k-1)L+1,...,(k+1)L-1為起點的子串都訪問一遍找最小rank者.

pku1743(中) 后綴數(shù)組
找一個串的最長不重疊相同子串.
由于某子串可能整體加上(或減去)相同偏移量,因此不直接對原串操作,而是構(gòu)造新串b, 其中b[i]=a[i]-a[i-1]. 此時求得最長不重疊相同子串的長度+1便是結(jié)果.
可以二分長度,或者棧掃描(*)直接求最大長度.

whu1084(易) 后綴數(shù)組
求重復(fù)次數(shù)最多的不重疊子串長度
spoj687的簡單版,不要求循環(huán)節(jié)連續(xù),直接二分長度即可.

pku2778(易) 多串匹配+DP AC自動機,trie圖
字符集大小為4, 給出m個(m<=10)禁止單詞(長度<=10), 求長度為n(n<=2*10^9)的不包含任何禁止單詞的串的個數(shù).
對禁止單詞建立trie圖,并計算出圖中任意合法結(jié)點之間的轉(zhuǎn)移數(shù),這樣便求得1步轉(zhuǎn)移矩陣.
做n次方后的矩陣,第1行中屬于合法狀態(tài)的元素之和即為解.
禁止單詞總長度不超過100,因此合法狀態(tài)亦<100.總復(fù)雜度100^3*logN

zju3228(中) Searching the String 后綴數(shù)組,AC自動機,trie圖
原串長10^5, 現(xiàn)在有10^5次查詢, 每次查詢一個長度<=6的模式串在原串中的最大匹配次數(shù).
模式串的匹配方式有可重疊和不可重疊兩種, 需針對查詢的類型返回相應(yīng)值.
后綴數(shù)組解法(在線):
對原串建立sa和height數(shù)組.由于模式串長度最大只有6, 我們可以將height數(shù)組分別按L=1..6分組,預(yù)處理求出相應(yīng)長度每組內(nèi)不重疊子串的最大匹配次數(shù),此過程O(6*nlogn).
另外由于sa數(shù)組將所有后綴按字典序排好了,所以對一個詢問, 可以二分找到它在sa中第一次出現(xiàn)的位置p1和最后一次出現(xiàn)的位置p2, 則p2-p1+1就是可重疊匹配的答案. 對不可重疊匹配,只需直接返回p1處預(yù)處理時的值. 每次查詢O(logn).
trie圖,AC自動機解法(離線):
把所有查詢建trie圖, 對圖中的每個有效結(jié)點維護:該串長度,兩類查詢的計數(shù),該串上一次被匹配的位置, 還要用個鏈表記下這個串屬于哪些查詢.
剩下的就是經(jīng)典的自動機多串匹配了.


(*)關(guān)于棧掃:
height數(shù)組具有區(qū)間性,各個不同前綴被相應(yīng)的極小值隔開,而一個區(qū)間中又有多個子區(qū)間.各區(qū)間值大于區(qū)間端點的部分互不影響.因此可以維護一個存放height值不減的棧,棧中每個元素的附屬值, 記錄了它在棧中相鄰的兩個元素為端點的連續(xù)區(qū)間內(nèi)所有height值不小于它的必要信息.比如此題要記錄height>=k的連續(xù)區(qū)間內(nèi)sa[i] 的最大值和最小值.
棧掃描的經(jīng)典例子移步pku2559.


(**)trie圖備忘:
比trie樹多了個后綴指針psuf. 設(shè)當前結(jié)點字母為c, 則psuf指向父親的后綴的pch[c].
trie樹中的后代結(jié)點指針pch(已經(jīng)更名為狀態(tài)轉(zhuǎn)移指針),當相應(yīng)后代存在時,指向后代;否則指向當前結(jié)點的后綴的相應(yīng)后代,即pch[k]=node[pa].pch[k].
后綴指針: 在接下來的狀態(tài)轉(zhuǎn)移中,當前結(jié)點與它的后綴結(jié)點等價.
后代結(jié)點指針: 在當前狀態(tài)下,接收到字符ch時,轉(zhuǎn)移到pch[ch]指向的結(jié)點.
posted on 2009-07-16 19:10 wolf5x 閱讀(1557) 評論(2)  編輯 收藏 引用 所屬分類: acm_icpc

FeedBack:
# re: 字符串匹配 后綴數(shù)組 trie圖(更新)
2009-09-23 15:19 | 小狗
O(n*(n/1+n/2+...+n/n)) = O(nlogn)

這里有錯~~  回復(fù)  更多評論
  
# re: 字符串匹配 后綴數(shù)組 trie圖(更新)
2009-10-08 17:17 | <A href="mailto:wolf5x1016@gmail.com"
@小狗
Thanks~~ 手誤了  回復(fù)  更多評論
  
<2025年11月>
2627282930311
2345678
9101112131415
16171819202122
23242526272829
30123456

"Do not spend all your time on training or studying - this way you will probably become very exhausted and unwilling to compete more. Whatever you do - have fun. Once you find programming is no fun anymore – drop it. Play soccer, find a girlfriend, study something not related to programming, just live a life - programming contests are only programming contests, and nothing more. Don't let them become your life - for your life is much more interesting and colorful." -- Petr

留言簿(3)

隨筆分類(59)

隨筆檔案(43)

cows

搜索

  •  

最新評論

評論排行榜

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            午夜久久久久久久久久一区二区| 欧美一区亚洲二区| 欧美日韩国产综合一区二区| 久久精品最新地址| 久久嫩草精品久久久精品| 国产精品久久久久aaaa九色| 欧美香蕉大胸在线视频观看| 国产亚洲欧美另类一区二区三区| 国产精品久久久久高潮| 国产精品入口福利| 一区二区三区av| 久久久久久久97| 亚洲精品中文字幕女同| 久久精品国产v日韩v亚洲| 久久精品日韩| 久久久.com| 一区二区三区不卡视频在线观看| 亚洲精品日韩久久| 宅男噜噜噜66国产日韩在线观看| 亚洲一区二区久久| 亚洲精品国精品久久99热一| 欧美在线日韩| 午夜视频久久久| 久久裸体艺术| 国外成人网址| 欧美激情按摩| 久久影音先锋| 黄色精品一区| 欧美激情在线播放| 日韩视频免费| 麻豆精品在线观看| 老司机午夜精品| 91久久久在线| 亚洲第一级黄色片| 欧美一区深夜视频| 在线免费观看日本欧美| 亚洲性视频网址| 亚洲一区在线播放| 国产亚洲精品一区二区| 欧美一区二区三区在| 久久视频在线视频| 91久久综合亚洲鲁鲁五月天| 久久久久久国产精品mv| 麻豆av一区二区三区| 亚洲精品日韩在线观看| 亚洲伊人网站| 亚洲深夜福利网站| 久久精品视频在线观看| 亚洲精品乱码视频| 夜夜嗨av色一区二区不卡| 欧美一区二区三区在线| 日韩视频中午一区| 久久精品成人一区二区三区| 久久精品视频一| 一区二区高清视频| 久久国产精品99久久久久久老狼| 亚洲一区激情| 亚洲精品免费在线播放| 欧美www在线| 亚洲一卡二卡三卡四卡五卡| 久久久久欧美| 亚洲国产综合在线| 国产精品美女久久久久久2018| 欧美成人一品| 性色一区二区| 国产在线拍揄自揄视频不卡99| 欧美国产一区二区| 国产精品久久久久aaaa樱花| 欧美高清视频在线| 国产欧美一区二区色老头 | 欧美视频一区在线| 欧美激情中文字幕一区二区| 国产乱码精品一区二区三区忘忧草| 亚洲国产日日夜夜| 国产一区二区中文字幕免费看| av成人手机在线| 亚洲精品欧美日韩| 久久免费少妇高潮久久精品99| 亚洲欧美视频在线观看| 欧美日韩黄色大片| 亚洲国产精品久久久久婷婷884| 国产综合网站| 性色av一区二区三区红粉影视| 亚洲一区自拍| 欧美日韩在线影院| 亚洲三级国产| 日韩视频一区二区三区在线播放免费观看| 欧美专区第一页| 久久精品亚洲精品国产欧美kt∨| 欧美日韩一区二区三| 亚洲欧洲日本一区二区三区| 亚洲黄色影片| 欧美不卡三区| 亚洲国产毛片完整版| 亚洲激情视频在线播放| 午夜精品久久久久久久99黑人| 亚洲影院高清在线| 亚洲伦伦在线| 久久综合久久88| 国产亚洲视频在线| 亚洲欧美视频一区| 亚洲视频一区二区| 99视频有精品| 欧美精品乱码久久久久久按摩| 亚洲第一页在线| 日韩午夜电影av| 欧美日韩国产黄| 亚洲视频碰碰| 欧美一区二区在线观看| 国产日本欧美在线观看| 久久精品卡一| 欧美电影免费观看高清| 亚洲精品精选| 欧美日韩中字| 亚洲欧美日韩一区二区| 欧美在线视频不卡| 亚洲九九爱视频| 亚洲一区二区在| 国产精品露脸自拍| 午夜精品成人在线视频| 久久精品国产第一区二区三区最新章节 | 国产精品婷婷午夜在线观看| 翔田千里一区二区| 欧美大片一区二区| 一区二区欧美激情| 国产深夜精品| 久久最新视频| 一区二区三区高清在线| 久久精品国产亚洲5555| 91久久午夜| 国产精品日韩高清| 欧美成人在线免费视频| 亚洲免费一在线| 亚洲成色777777在线观看影院| 亚洲五月六月| 国产一区二区三区日韩| 欧美成人小视频| 亚洲欧美综合v| 亚洲欧洲精品一区二区精品久久久| 亚洲自拍偷拍福利| 亚洲大胆人体在线| 国产精品视频观看| 欧美激情中文不卡| 久久国产夜色精品鲁鲁99| 日韩视频免费看| 欧美v国产在线一区二区三区| 亚洲一区影音先锋| 亚洲欧洲日产国产综合网| 国产亚洲综合性久久久影院| 欧美人在线观看| 久久久久久一区二区| 中文国产一区| 亚洲日本aⅴ片在线观看香蕉| 性欧美video另类hd性玩具| 亚洲九九九在线观看| 激情成人av在线| 国产精品一区二区你懂得| 欧美日韩视频免费播放| 麻豆成人精品| 久久久精品性| 小黄鸭视频精品导航| 一区二区三区回区在观看免费视频| 欧美激情成人在线| 欧美mv日韩mv国产网站| 久久综合久久久| 久久精品二区亚洲w码| 亚洲欧美制服另类日韩| 中国av一区| 国产一区清纯| 国产日本欧美一区二区| 欧美激情在线有限公司| 亚洲永久在线观看| 一区二区三区日韩精品| 91久久精品一区二区别| 欧美成人蜜桃| 免费在线成人av| 老司机午夜精品视频在线观看| 久久久国产视频91| 久久裸体视频| 久久久久久久综合| 久久久久一区二区三区| 久久久91精品| 免费短视频成人日韩| 美脚丝袜一区二区三区在线观看| 亚洲无限av看| 亚洲精品视频二区| 亚洲免费黄色| 一区二区三区四区五区在线| 一区二区高清| 亚洲欧美日韩国产另类专区| 亚洲综合电影一区二区三区| 亚洲欧美综合精品久久成人| 亚洲欧美精品| 久久精品国产一区二区电影| 久久久久中文| 亚洲电影在线免费观看| 亚洲免费久久| 午夜视频一区在线观看| 久久久久久久综合色一本| 女主播福利一区|