这是我之前博客里提到的一道AC自动机的练手题,但是要完成这道题,我之前博客里提到的东西还不够,这里总结一下这道题. 这道题不是一般的裸的AC自动机,它的询问和插入是交叉出现的所以用我之前写的板子不大合适,这道题在构建自动机时不能改变原有的 Trie树 的结构,所以没有代表字符串的结点的不需要去改它的值,所以我在 build() 函数 处做了一些修改.在复杂度方面,如果是强上普通的AC自动机,最差会达到O(n^2),感觉不太好.我们这里可以用到平方分割的套路,搞大小两个自动机,每次插入都在小自动机…