OI康复训练 bzoj 2565: 最长双回文串 manacher

今天回顾了下manacher算法,然后顺便写了一下题。

我们求出res[x],代表以x为中点的回文串的一端多长。

然后lr[x]表示包含x点的回文串的最左端的中点,rr[x]表示包含x点的回文串的最右端的中点。然后我们相当于枚举中间的那个*,即可。
[crayon-5ba6620029[……]

Read more