摘要: 建回文树。 cnt*len取max。 By:大奕哥 阅读全文
posted @ 2018-01-10 22:01 大奕哥&VANE 阅读(97) 评论(0) 推荐(0) 编辑
摘要: 建回文树。 正反建统计一种前缀和求出所有不相交的,用总数减去就是答案数。 在这里我们可以知道一个字符串中所有回文串的个数即为num数组之和(因为以一个节点为回文串结尾的字串都是唯一的) 也可以是cnt数组的和(想想看为什么) 题目链接:http://www.tsinsen.com/ViewGProb 阅读全文
posted @ 2018-01-10 21:52 大奕哥&VANE 阅读(137) 评论(0) 推荐(0) 编辑
摘要: 建回文树,然后判断长度奇偶性,统计下来排序即可。 题目链接:http://www.tsinsen.com/ViewGProblem.page?gpid=A1255 By:大奕哥 阅读全文
posted @ 2018-01-10 21:47 大奕哥&VANE 阅读(140) 评论(0) 推荐(0) 编辑
摘要: 求最长双回文串,正反建回文树求最大。 题目链接:http://www.tsinsen.com/ViewGProblem.page?gpid=A1280 By:大奕哥 阅读全文
posted @ 2018-01-10 21:44 大奕哥&VANE 阅读(185) 评论(0) 推荐(0) 编辑
摘要: 回文树,也叫回文自动机,是2014年被西伯利亚民族发明的,其功能如下: 1、求前缀字符串中的本质不同的回文串种类 2、求每个本质不同回文串的个数 3、以下标i为结尾的回文串个数/种类 4、每个本质不同回文串包含的本质不同回文串种类 (本文参考自Palindromic Tree——回文树【处理一类回文 阅读全文
posted @ 2018-01-10 21:40 大奕哥&VANE 阅读(4571) 评论(0) 推荐(0) 编辑
摘要: 题目是给出一个字符串,每次询问一个区间[a,b]中所有的子串和另一个区间[c,d]的lcp最大值,首先求出后缀数组,对于lcp的最大值肯定是rank[c]的前驱和后继,但是对于这个题会出现问题,就是题目中有区间的限制。 For example: 5 1 aaaab 1 2 3 5 对于这个样例,如果 阅读全文
posted @ 2018-01-10 17:41 大奕哥&VANE 阅读(265) 评论(0) 推荐(0) 编辑
摘要: 单调栈存储最大值位置。 由于单调下降所以查找第一个大于当前查询位置的数即可。 阅读全文
posted @ 2018-01-10 17:19 大奕哥&VANE 阅读(120) 评论(0) 推荐(0) 编辑