题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4513 题解:就是在Manacher判断回文串的过程中添加一条条件 Ma[i + dp[i] - 2] >= Ma[i + dp[i]]即可。 ...
分类:
其他好文 时间:
2017-04-16 12:30:05
阅读次数:
147
题意: 思路:生成一些回文拼起来使生成的段数最小 显然存在一种最优的方案,使生成的那些回文是目标串的极长回文子串 求出对于每个位置的最长回文子串,问题就转化成了: 给定一些已知起始和终止位置的线段,求覆盖住整个区域的最小线段数量 这个可以BIT做,求当前已经覆盖的区域最远能拓展到哪里 也可以预处理一 ...
分类:
编程语言 时间:
2017-04-14 22:40:50
阅读次数:
259
题意:求一个由小写字母组成的字符串中的最长回文长度 cas<=120 n<=110000 思路:试manacher板子 ...
分类:
其他好文 时间:
2017-04-13 15:35:38
阅读次数:
149
#1032 : 最长回文子串 #1032 : 最长回文子串 时间限制:1000ms 单点时限:1000ms 内存限制:64MB 描述 小Hi和小Ho是一对好朋友,出生在信息化社会的他们对编程产生了莫大的兴趣,他们约定好互相帮助,在编程的学习道路上一同前进。 这一天,他们遇到了一连串的字符串,于是小H ...
分类:
其他好文 时间:
2017-04-12 21:36:51
阅读次数:
253
Manacher用来求最长回文子序列 1.读入字符串,在每个字符前后加一个没有在原字符串中出现的字符,这样不论是奇数或者偶数个都变成了奇数个 例如: M A N A C H E R # M # A # N # A # C # H # E # R # 2.在开头和末尾再添加一个没有在原字符串中出现的字 ...
分类:
其他好文 时间:
2017-04-12 04:08:12
阅读次数:
180
【算法】manacher 【题解】【算法】字符串 #include<cstdio> #include<algorithm> #include<cstring> using namespace std; const int maxn=300010; int n,p[maxn]; char s[maxn ...
分类:
其他好文 时间:
2017-04-05 20:30:42
阅读次数:
125
1 public static int Manacher(String A,int n){ 2 char AA[]=A.toCharArray(); 3 char BB[]=new char[2*n+3]; 4 int k=0; 5 for(int i=1;i<=2*n+1;i=i+2){ 6 BB ...
分类:
编程语言 时间:
2017-04-05 14:37:49
阅读次数:
197
思路: 二分+哈希 Manacher改一下条件 0只能匹配1 1只能匹配0 #匹配# (长度从0开始匹配 这样就相当于只能从#开始走了 也就是长度为偶数) ...
分类:
其他好文 时间:
2017-04-01 09:42:13
阅读次数:
173
虽然说是疯狂训练吧,但是也没写多少题,就把伸展树的操作熟悉了一下,ac了5个题目。 一整天没啥可吐槽的,除了昨天在机房打游戏的某位朋友翻车后和教练谈了谈心2333 说题吧。。 1.BZOJ1208 HNOI2004 宠物收养所 这个题思路很简单,当做模板题打,在模板题中也算是简单的了,涉及操作:前驱 ...
分类:
其他好文 时间:
2017-03-29 22:12:16
阅读次数:
186
题目链接:http://poj.org/problem?id=3974 manacher模板题。 hdu3068最长回文 ...
分类:
其他好文 时间:
2017-03-25 00:57:59
阅读次数:
177