题目:https://leetcode-cn.com/problems/longest-palindromic-substring/ 给定一个字符串 s,找到 s 中最长的回文子串。你可以假设 s 的最大长度为 1000 我的是暴力解法,最终勉强通过了第一次答案: 通过遍历从头到尾的所有字符串来比较 ...
分类:
其他好文 时间:
2021-01-06 12:31:44
阅读次数:
0
显然的贪心就是尽可能取位置靠前的点 那么问题转化成了维护另一个子串的 \(endpos\) 在这个子串的出现位置 按照古老的套路就是把一个建出来自动机另一个跑匹配 如果 \(l_{ed[r]}<r-l+1\) 那么答案就是 \(0\) 反之考虑当前的点的在 \([tl,tr]\) 中所有的 \(en ...
分类:
其他好文 时间:
2021-01-06 12:21:04
阅读次数:
0
传送 这题乍一看觉得无从下手,但只不过是把两个知识点捏到一块罢了。 判断多个串是否为一个串的子串,首先想到AC自动机:把$K$个模板串建成AC自动机,然后在上面dp(记忆化搜索)。 AC自动机上的每一个节点到根的路径都代表一个前缀,所以令$dp[i][j]$表示模板串匹配到节点$i$,文本串匹配到长 ...
分类:
其他好文 时间:
2021-01-05 10:57:25
阅读次数:
0
题目:给你一个字符串 s 、一个字符串 t 。返回 s 中涵盖 t 所有字符的最小子串。如果 s 中不存在涵盖 t 所有字符的子串,则返回空字符串 "" 。 注意:如果 s 中存在这样的子串,我们保证它是唯一的答案。 示例 1: 输入:s = "ADOBECODEBANC", t = "ABC"输出 ...
分类:
编程语言 时间:
2020-12-31 12:12:57
阅读次数:
0
0-1背包问题、最大连续子数组问题、最长公共子序列、最长公共子串、最小编辑距离、钢条切割、矩阵链乘 动态规划问题的一般步骤: 给出问题的表示,明确子问题 分析最优结构,构造递推公式 确定计算顺序,依次求解问题 记录决策过程,输出最优方案 0-1背包 动规方程: 用$p[i,c]$表示前i个物品在背包 ...
分类:
编程语言 时间:
2020-12-31 12:05:20
阅读次数:
0
58.SAM后缀自动机 东西挺多的 SAM中每一个节点都是一个endpos的等价类,节点与节点之间有字符的转移。构成的SAM是一个DAG,每一个在原串中本质不同的子串都唯一对应一条在SAM从初始节点出发的路径 可以发现对于一个节点的那些串,如果以长度升序排序后,前一个串是后一个串的后缀并且长度相差1 ...
分类:
其他好文 时间:
2020-12-28 11:12:57
阅读次数:
0
class Solution { // 思路:【动态规划】 // 状态转移方程是 p[i,j] = p[i+1,j-1] && p[i] = p[j] // p[i,j] 表示第i个 和 第j 个是相同的 // 整体分两层循环【第一层按回文长度从零到n , 第二层就是字符从第一个开始往后循环】 pu ...
分类:
其他好文 时间:
2020-12-25 12:13:31
阅读次数:
0
原题链接:https://leetcode-cn.com/problems/longest-substring-without-repeating-characters/ class Solution { public int lengthOfLongestSubstring(String s) { ...
分类:
其他好文 时间:
2020-12-25 11:54:02
阅读次数:
0
比赛链接:https://codeforces.ml/contest/1461 A. String Generation 给定字符长度和最大回文子串长度,输出一个由'a','b','c'构成的字符串。 解题代码: #include <iostream> using namespace std; in ...
分类:
其他好文 时间:
2020-12-17 12:37:52
阅读次数:
2
1 class Solution { 2 public String longestPalindrome(String s) { 3 if(s.equals("")) return ""; 4 String origin = s; 5 String reverse = new StringBuffe ...
分类:
其他好文 时间:
2020-12-14 13:43:53
阅读次数:
4