题面 题意:给你一个字符串,问你满足s[i]=s[2n-i]=s[2n+i-2]的子串(这子串长度为3n-2)有多少个,原字符串长度<=5e5 题解:对于这种子串,其实要满足2个回文,跑过一次Manacher后,len[i]表示以i向两边扩展最远的回文串长度, 那么对于答案,实际就是统计满足下列条件 ...
分类:
其他好文 时间:
2018-10-07 00:43:03
阅读次数:
188
今天学了$manacher$算法。 上午是考试,~~炸裂~~ $T1$ 进制转换 完全没往正数进制转换上想,死找规律,没找出来,$GG$,~~我可能是唯一一个没切掉此题的~~ 和正数进制转换类似,短除法,处理一下负数取模就好了。 $T2$ 方格取数 ~~做了多少遍了~~ $T3$ Car的旅行路线 ...
分类:
其他好文 时间:
2018-10-04 17:27:28
阅读次数:
155
不定期更新 OIer 知识点 一 字符串 (1) Knuth-Morris-Pratt(2) Hash hash表(3) Trie(4) Aho-Corasick automaton(5) Suffix-Tree(后缀树)(6) Manacher(7) Huffman 二 动态规划(1) 背包dp( ...
分类:
其他好文 时间:
2018-10-03 20:48:36
阅读次数:
189
断断续续地看了两天的马拉车算法,可算是给搞明白了(贼开心),这算是自己搞懂的第一个算法了(23333333333333)这个算法照目前自己的理解来看,貌似就只能求个字符串中的回文串(接触这个算法是要求最长的回文串),虽然应用的范围有点少,但还是要学习滴,不然遇到类似的题目就gg了。 可以在线性时间内 ...
分类:
编程语言 时间:
2018-10-02 22:17:03
阅读次数:
210
传送门 搞回文串很容易想到manacher 把每个回文串看成线段 那就是求两个相邻线段的最长总长度 设 l[ i ] 表示左端点为 i-1 时线段的最大长度,r[ i ] 表示右端点为 i+1 时线段的最大长度 (这里 i 在manacher处理后的字符串a上,线段的最大长度是指原字符串上的长度) ...
分类:
其他好文 时间:
2018-09-28 12:32:22
阅读次数:
178
Description 母亲节就要到了,小 H 准备送给她一个特殊的项链。这个项链可以看作一个用小写字 母组成的字符串,每个小写字母表示一种颜色。为了制作这个项链,小 H 购买了两个机器。第一个机器可以生成所有形式的回文串,第二个机器可以把两个回文串连接起来,而且第二个机器还有一个特殊的性质:假如一 ...
分类:
其他好文 时间:
2018-09-26 22:41:09
阅读次数:
180
题目大意:给出一个长度不大于2e6的字符串,求最长回文串长度。 人话:敲一遍manacher板子。 代码: ...
分类:
其他好文 时间:
2018-09-24 11:26:15
阅读次数:
149
传送门 Manacher算法是解决回文串长度计算的利器。 优秀的算法大多起源于暴力的思想……我们一步一步来看。 首先思考最暴力的情况怎么匹配?枚举所有区间然后判断是不是回文串,时间复杂度O(n^3). 之后我们考虑优化一下。因为回文串的左右是相同的,所以我们不妨可以枚举回文串的中点,之后向两边依次拓 ...
分类:
编程语言 时间:
2018-09-21 15:11:15
阅读次数:
168
题目链接:http://poj.org/problem?id=3974 题目: 多组询问,每组给出一个字符串,求该字符串最长回文串的长度 数据范围支持$O(nlog n)$ 解法一: 二分+hash 回文串分奇数串和偶数串。对于奇数串,我们枚举它的中点,二分一下这个中点可以向两边扩展多远的距离;对于 ...
分类:
其他好文 时间:
2018-09-20 22:18:26
阅读次数:
224
Description 据说如果你给无限只母牛和无限台巨型便携式电脑(有非常大的键盘),那么母牛们会制造出世上最棒的回文。你的工作就是去寻找这些牛制造的奇观(最棒的回文)。 在寻找回文时不用理睬那些标点符号、空格(但应该保留下来以便做为答案输出),只用考虑字母'A'-'Z'和'a'-'z'。要你寻找 ...
分类:
编程语言 时间:
2018-09-20 11:28:15
阅读次数:
197