原创 後綴自動機學習筆記

學了一週後綴自動機,覺得...好難啊(主要還是自己太弱了...) 看見網上很多大佬的講解,感覺總是有些似懂非懂,索性一起拿出來做一個總結,可能效果會好一些 首先,我們能看到這樣一個定義: 後綴自動機是一個的確定性有限狀態自動機,能接受這個

原创 後綴自動機實際應用

上一篇我們具體介紹了後綴自動機的構造方式,但並沒有談它的應用,那麼我們在這一篇裏詳細談一談後綴自動機的應用 首先,後綴自動機的性質:從根節點開始可以識別一個字符串的所有子串 接下來,我們需要給出一個定義: 將後綴自動機上的pre指針反指,

原创 後綴自動機例題精講

這一篇是後綴自動機的一些例題題解及總結: 例: bzoj 3998 題意:求一個字符串中第k小子串,t=0表示子串僅區別字典序,t=1表示子串區分起止位置 解析:建起後綴自動機,構造parent樹,利用後綴自動機有向無環累計子串個數查詢即

原创 bzoj 3998

我們分成兩種情況來分析這個問題:t=0和t=1 t=1時,每一個子串出現的次數就是他在parent樹上所在子樹內前綴節點的個數,這一點我們已經說的很清楚了 利用SAM有向無環的性質,我們可以在parent樹上統計完之後在後綴自動機上dfs

原创 bzoj 3277

十分之噁心的後綴自動機 (其實是水題,但是我太弱了...) 首先,有一個預備知識:bzoj 2780https://blog.csdn.net/lleozhang/article/details/89365183 現在我們假定你會了這道題

原创 bzoj 2780

後綴自動機的應用 首先我們觀察到:如果一個詢問串的答案不爲0,那麼這個串一定是至少一個模式串的子串 如果只有一個模式串,那麼這個問題可以簡單地用什麼東西解決掉(比如普通後綴自動機) 而這裏有很多模式串,所以普通後綴自動機是不夠的。 那麼我

原创 bzoj 3238

後綴數組+單調棧的應用 首先我們研究一下這個表達式,可以發現前半部分與串的情況並沒有關係,而只是跟串的長度有關,所以我們先把前半部分算出來: 於是我們只需計算出即可 那麼可以發現,對於排名分別爲i,j的兩個串,他們的lcp應當是: 但是

原创 後綴自動機學習筆記

學了半天,終於大概搞懂後綴自動機是個什麼鬼東西了 這裏做一個筆記(以免以後忘掉) 首先我們要注意一個問題:後綴自動機與trie樹的形式與構造思想差距均是相對大的,所以不能完全用trie樹的角度來理解後綴自動機!!! 然後我們進入正題 基本

原创 lnoi2019遊記

好詭異的省選...... day0: 莫名其妙的訂了下午從sy到dl的火車,得五點多才能到,所以.......是不需要試機的嗎...... 好吧... 看着停課的jflr們,感覺他們好強啊,像我這種醬油選手聊盡人事,不要被高一的虐就好..

原创 bzoj 4816

這題是莫比烏斯反演的典型題也是很有趣的題。 題意:求,其中f爲爲斐波那契數列 那麼首先觀察一下指數,發現是我們熟悉的形式,可以轉化成這樣的形式: 令T=kd,且假設n<m,有: 令 則原式= 這樣的話我們的步驟就是這樣的: 線性篩出莫比

原创 bzoj 3529

非常好的一道莫比烏斯反演題,對提升自己的能力有很大幫助。 首先我們分析一下題意:題意讓我們求,其中 那麼我們首先對後面的式子進行一下變形,變形過程詳見https://blog.csdn.net/lleozhang/article/deta

原创 bzoj 2301

一道莫比烏斯反演入門題。 首先觀察題目要求:的數對數 首先可以發現,這個東西同時有上界和下界,所以並不是很容易計算 那麼我們變下形,可以看到:原式= 是不是清晰很多了?(當然沒有!) 不,這一步很重要的目的在於消去了下界,使得我們的計算更

原创 noip 2018遊記

憋了好久的遊記... 考慮到寫遊記是oi界的傳統,所以還是應該寫一篇的。 day0: 上午9:30的火車出發,車上頹三國殺! 中午12:00到了大連,下午2:00纔開始試機,還是得先去大連大學,在食堂吃午飯 (食堂真良心,菜量巨大) 下午

原创 bzoj 3191

非常好的一道題 看到這道題,肯定能想到概率dp,但是狀態的設計與轉移都是一個難點 如果正向模擬來設計狀態,那麼不難發現是很難以轉移的 所以我們考慮反向模擬,用類似博弈的方法來轉移 不難發現,如果只剩了最後一個人,那麼這個人獲勝的概率是1

原创 bzoj 3566

非常好也是比較難的題 首先,不難看出這是一道樹形的概率dp 那麼我們就要考慮轉移 我們發現,一個點能充上電的概率是這個點本身通電的概率+這個點的子節點給他傳過來電的概率+這個點的父節點給他傳過來電的概率 但是這裏的加法都是概率的加法,也就