description
給定 n
nn 個字串,m
mm 次詢問第 x
xx 個字串在第 y
yy 個字串**現了多少次。n,m
≤105
n,m\le10^5
n,m≤10
5solution
建立ac自動機和失配樹,問題轉化為:失配樹上 x
xx 串的終止節點的子樹中有多少個節點屬於 y
yy 串。
求出失配樹的dfs序,將詢問離線,並在 y
yy 的終止節點處打上 x
xx 的標記。
在ac自動機上dfs,每到達乙個點就在樹狀陣列中將其dfs序 +1,離開時再 -1,這樣樹狀陣列中存的就是當前點到 0 號點的鏈,若當前點有標記,則在樹狀陣列上查詢 x
xx 的子樹的和。
NOI2011阿狸的打字機
阿狸喜歡收藏各種稀奇古怪的東西,最近他淘到一台老式的打字機。打字機上只有28個按鍵,分別印有26個小寫英文本母和 b p 兩個字母。經阿狸研究發現,這個打字機是這樣工作的 l 輸入小寫字母,打字機的乙個凹槽中會加入這個字母 這個字母加在凹槽的最後 l 按一下印有 b 的按鍵,打字機凹槽中最後乙個字母...
NOI2011 阿狸的打字機
阿狸喜歡收藏各種稀奇古怪的東西,最近他淘到一台老式的打字機。打字機上只有28個按鍵,分別印有 26個小寫英文本母和 b p 兩個字母。經阿狸研究發現,這個打字機是這樣工作的 輸入小寫字母,打字機的乙個凹槽中會加入這個字母 按 p 前凹槽中至少有乙個字母 按一下印有 b 的按鍵,打字機凹槽中最後乙個字...
NOI2011阿狸的打字機
剛學完字串演算法做一做題,這道題的質量的確很高,做完以後感覺對ac自動機有長進 一下的神仙思路來自yyb dalao 蒟蒻開始只想到了40分暴力,全程靠題解 step1 首先直接處理出所有的串再裸kmp好寫,但是覺得得分應該不高,也沒有人說能拿多少分 這個題正解的第一步是要想到ac自動機,準確地說和...