摘要:
题解 SA+并查集 把ht按大小倒序加入,并查集合并维护答案的变化; SAM 翻转串,求出SAM的parent树就是后缀树,两个串的最长公共后缀是他们lca的len值; 考率一个节点x,那么它子树里的后缀点两两都是len[x]相似的,所以在prent树上做dp即可; 第二问的统计比较麻烦,可以直接写 阅读全文
摘要:
题解: 对病毒串建立ac自动机; 有一个无限长的串等价于可以一直在自动机上匹配,等价于自动机上的转移有环; 当然前提是去掉病毒节点的fail子树; 写一个dfs记录是否在栈中,来过没有找到就不必再来了再记录一个vis保证复杂度; 然而。。。。。。我在找环的时候呆了很久,最后写了tarjan; 如果你 阅读全文
摘要:
题解们: 1.首先可以被很多暴力给搞过去;我以前也是这样水过去的 2.ac自动机 2.1 抽离fail树 对点名建自动机,建$fail$树的时候只保留询问节点; 对于一个喵,子串==在自动机里匹配到的所有节点的$fail$祖先并 把姓和名都放到里面去跑,得到所有的点,需要把这些点在新的$fail$树 阅读全文