顯示具有 SPOJ 標籤的文章。 顯示所有文章
顯示具有 SPOJ 標籤的文章。 顯示所有文章

2016年1月27日 星期三

[SPOJ LCS2][Suffix Automaton] LCS2 - Longest Common Substring II

題目連結

跟 LCS 這篇的作法非常相似,基本概念就不說了
不過寫這題的時候花了頗大量的時間釐清答案的更新順序和debug(最後的bug竟然是錯在toposort寫爛了...)

難點在於要怎麼兩兩合併計算答案,這要對後綴自動機上的狀態表示感受到一定深度才能體會(?
code中的許多assert可以幫助理解一些關鍵點和常有的bug

[SPOJ LCS][Suffix Automaton] LCS - Longest Common Substring

原題連結

Suffix Automaton(後綴自動機)的初級練習題,關於Suffix Automaton的教學和介紹網路上有很多資源,我之後也會自己補上一篇的
這題會用SAM的主要原因是SPOJ會莫名的把O(nlogn)的Suffix Array解卡掉,所以能過的大概只有後綴自動機或是O(n)後綴樹、後綴陣列的構造法吧