字符串-Manacher
Maxwei_wzj
AFO
展开
-
【HDU3068】最长回文-O(n)复杂度的Manacher算法
【HDU3068】最长回文-O(n)复杂度的Manacher算法原创 2017-01-02 11:50:04 · 365 阅读 · 0 评论 -
【BZOJ3160】万径人踪灭-FFT+Manacher
测试地址:万径人踪灭 做法:本题需要用到FFT+Manacher。 这道题要求不连续的回文子序列数量,显然这个数量等于所有回文子序列数量减去连续的回文子序列数量,后面的部分很显然可以用Manacher算法求出,那么现在的问题就是要求出所有回文子序列数量。 对于每条对称轴,都存在一个数kkk,使得任意满足i+j=ki+j=ki+j=k的数对i,ji,ji,j,有ai+ajai+aja_i+a_...原创 2018-03-09 21:23:38 · 230 阅读 · 0 评论 -
【BZOJ2342】双倍回文(SHOI2011)-Manacher+set
测试地址:双倍回文 做法:本题需要用到Manacher+set。 首先看到回文子串,跑一遍Manacher是免不了的了,关键在于如何利用这些信息求最长的双倍回文子串。 考虑枚举整个串的对称轴xxx(显然这个对称轴一定是两个字符之间的位置),令f(x)f(x)f(x)为xxx这个位置的最长回文半径,即以这个位置为对称轴的最长回文子串的半长,那么对于之后的一个位置yyy,定义这个yyy对xxx合...原创 2018-06-15 15:39:19 · 235 阅读 · 0 评论 -
【BZOJ1414】对称的正方形(ZJOI2009)-Manacher+RMQ
测试地址:对称的正方形 做法: 本题需要用到Manacher+RMQ。 首先,我们想到枚举正方形的对称轴,求对称轴交点为某个点时的最大正方形大小。为了方便,我们模仿Manacher算法,把矩阵用000扩充成一个(2n+1)×(2m+1)(2n+1)\times (2m+1)(2n+1)×(2m+1)的矩阵,这样我们就只用考虑中心点是整数坐标的情况了。 我们思考怎么判断一个中心点向外延伸kkk的长度...原创 2018-10-15 11:02:36 · 491 阅读 · 0 评论