VII. "万径人踪灭" ~~跑题了跑题了~~ 我们可以知道, $\text{答案=位置对称且字符对称的子序列的数量 回文子串数}$ 关于回文子串数,我们可以使用Manacher算法在$O(n)$时间内实现。如果不会的话,可以参加鄙人的 "拙作" ,这里不再赘述。 那么如何求出 位置对称且字符对称的 ...
分类:
其他好文 时间:
2020-04-25 12:18:09
阅读次数:
60
定一个字符串 s,找到 s 中最长的回文子串。你可以假设 s 的最大长度为 1000。 示例 1: 输入: "babad"输出: "bab"注意: "aba" 也是一个有效答案。示例 2: 输入: "cbbd"输出: "bb" 暴力解法: 思路:从字符串中选出一个子串,其中子串的开头字符和末尾字符一 ...
分类:
其他好文 时间:
2020-04-24 21:29:16
阅读次数:
61
容易发现可以枚举j 那么只需要计算出 l~j这段是回文串的l的和 以及j+1~r这段是回文串的r的和。 可以manacher 之后想要求出以j为右端点的回文串左端点的和 这个东西我们通过某个点为中心的最长回文子串来做出。 容易发现是一个类似于等差数列的东西的 可以上线段树 不过没有在线询问啥的 可以 ...
分类:
其他好文 时间:
2020-04-22 16:58:50
阅读次数:
68
字符串hash+二分答案 "Palindrome poj 3974" 求一个字符串的最长回文子串。 因为在学字符串hash,所以这里用二分答案和字符串hash来做,复杂度是O(N log N),据说manacher算法可以在O(N)解决这个问题,但是我还没学哈哈哈哈以后补吧 题解:枚举回文子串的中心 ...
分类:
其他好文 时间:
2020-04-20 21:27:55
阅读次数:
60
题目 Given a string s, find the longest palindromic substring in s. You may assume that the maximum length of s is 1000. 给定一个字符串 s,找到 s 中最长的回文子串。你可以假设 s ...
分类:
其他好文 时间:
2020-04-15 18:30:58
阅读次数:
59
题意 给一个字符串$s$,求最长回文子串 题解 马拉车算法的模板题。 首先,预处理字符串$s$,在每个字符的左边和右边都插上一个特殊符号,比如 ,目的是保证字符串的长度为奇数。举例来说, $\rightarrow$ ,`abcd a b c d a b c @ a b c $`。(如果声明的是全局变 ...
分类:
其他好文 时间:
2020-04-08 22:34:50
阅读次数:
73
马拉车(Manacher)算法(具体算法流程看这个哥们的:https://blog.csdn.net/qq_35065720/article/details/104205920): 算法解决:在一个字符串中找到最长的回文字符串。 实现策略: 以每个位置作为中心,向两边扩展,可以确定奇回文,但是偶回文 ...
分类:
编程语言 时间:
2020-04-06 17:09:17
阅读次数:
79
题目链接 http://noi.openjudge.cn/ch0107/34/ ...
分类:
其他好文 时间:
2020-04-04 20:25:15
阅读次数:
61
最长回文子串 LeetCode: "最长回文子串" 题目描述: 给定一个字符串 s,找到 s 中最长的回文子串。你可以假设 s 的最大长度为 1000。 示例: 思想: 动态规划,用boolean[][] dp记录每一对字符是否相等; 双循环遍历所有子串情况,每次遍历时,当前子串首尾相等且内层 1字 ...
分类:
编程语言 时间:
2020-04-03 10:34:15
阅读次数:
84
Manacher算法-又叫马拉车算法 概要: Manacher算法主要用于求最长回文串,在求最长回文串的时候做了处理使长度均变成了奇数 1 S # 1 # 2 # 2 # 1 # 2 # 3 # 2 # 1 # 2 P 1 2 1 2 5 2 1 4 1 2 1 6 1 2 1 2 1 3 (p.s ...
分类:
编程语言 时间:
2020-04-01 19:05:55
阅读次数:
87