摘要:
【BZOJ4805】欧拉函数求和(杜教筛) 题面 "BZOJ" 题解 好久没写过了 正好看见了顺手切一下 令$$S(n)=\sum_{i=1}^n\varphi(i)$$ 设存在的某个积性函数$g(x)$ $$(g \varphi)(i)=\sum_{d|i}g(d)\varphi(\frac{i} 阅读全文
摘要:
【BZOJ2342】双倍回文(回文树) 题面 "BZOJ" 题解 构建出回文树之后 在$fail$树上进行$dp$ 如果一个点代表的回文串长度为$4$的倍数 并且存在长度为它的一半的回文后缀 那么就是可行的 如何维护长度是一半的回文后缀? $fail$树上的父亲一定包括了它的所有的回文后缀 因此在$ 阅读全文
摘要:
【BZOJ2565】最长双回文串(回文树) 题面 "BZOJ" 题解 枚举断点$i$ 显然的,我们要求的就是以$i$结尾的最长回文后缀的长度 再加上以$i+1$开头的最长回文前缀的长度 至于最长回文前缀怎么求? 把串反过来前缀不就变成后缀了吗? 所以构造两个回文树就好啦 cpp include in 阅读全文
摘要:
关于回文树的理解 前言 这段时间搞字符串上了瘾? 看起来是的 那就继续搞吧 Part1一些名词 回文串 不想解释什么意思 回文子串 一个串的子串,它是回文串,那么它就是回文子串 最长回文后缀 对于一个长度小于自己的后缀,如果它是回文串,并且不存在比它更长的回文后缀,那么它就是最长回文后缀 最长回文前 阅读全文