1 /* 2 题意:求形如(2 3 4) (4 3 2) (2 3 4)的最长长度,即两个重叠一半的回文串 3 Manacher:比赛看到这题还以为套个模板就行了,因为BC上有道,自己又学过Manacher算法,结果入坑WA到死 4 开始写的是判断是否 p[i]-1 <= p[i+p[i]-1]-1,但是没有想到这种情况:5 (5 1) (1 5) (5 1) 1 5 单靠最长回文半径是不行的,看了网上的解题报告知道,要从极端位置往回挪才行 6 给我的教训是只会套模板是没用的,要灵活的使用该算法。另外max() 函数似乎很费时间 7 8 */ 9 /************************************************10 * Author :Running_Time11 * Created Time :2015-8-11 12:52:4912 * File Name :C.cpp13 ************************************************/14 15 #include 16 #include 17 #include 18 #include 19 #include 20 #include 21 #include 22 #include 23 #include 24 #include 25 #include 26 #include 27 #include