题意 给一个长度为n的字符串,Q次询问,每次询问$(l,r,k)$ , 回答子串$s_ls_{l+1}\cdots s_r$ 第$k$ 次出现的位置,若不存在输出 1。$n\le 1e5,Q\le 1e5$ 分析 查询子串第 k 次出现的位置,很容易想到要用处理字符串的有力工具——后缀数组。 那么该 ...
分类:
编程语言 时间:
2019-08-24 00:20:24
阅读次数:
105
写在前面:今天下午药丸……不会字符串,全程掉线/ll 给出字符串$S$,$q$次询问,每次给出$a,b,c,d$,询问$S[a,b]$的所有子串和$S[c,d]$最长公共前缀的最大值。$|S|,q \leq 10^5$。 取反建个SAM,每次二分答案。如果存在,合法串的右端点一定在$[a+len 1 ...
分类:
其他好文 时间:
2019-08-19 09:57:56
阅读次数:
134
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=6629 题意求字符串的每个后缀与原串的最长公共前缀之和。 比赛时搞东搞西的,还搞了个后缀数组...队友一说扩展kmp我都自闭了,这不就是扩展kmp的第一步,求原串的每个后缀与原串的最长公共前缀嘛。 需要注 ...
分类:
其他好文 时间:
2019-08-14 21:41:14
阅读次数:
93
next数组和extend数组 设有字符串S,T,next[i]表示T[i...len]与T[0..len]的最长公共前缀,extend[i]表示S[i...len]与T[0...len]的最长公共前缀,扩展kmp要做的就是把extend数组求出来. 思路 假设当前在匹配到s串的i位置,设p=i,然 ...
分类:
其他好文 时间:
2019-08-06 15:37:11
阅读次数:
123
https://blog.csdn.net/dyx404514/article/details/41831947 拓展kmp是对KMP算法的扩展,它解决如下问题: 定义母串S,和字串T,设S的长度为n,T的长度为m,求T与S的每一个后缀的最长公共前缀,也就是说,设extend数组,extend[i] ...
分类:
其他好文 时间:
2019-08-02 16:54:54
阅读次数:
112
题目: 编写一个函数来查找字符串数组中的最长公共前缀。 如果不存在公共前缀,返回空字符串 ""。 示例 1: 输入: ["flower","flow","flight"] 输出: "fl"示例 2: 输入: ["dog","racecar","car"] 输出: "" 解释: 输入不存在公共前缀。说 ...
分类:
其他好文 时间:
2019-06-30 12:36:39
阅读次数:
114
题目来源:https://leetcode-cn.com/problems/longest-common-prefix/ 编写一个函数来查找字符串数组中的最长公共前缀。 如果不存在公共前缀,返回空字符串 ""。 示例 1: 输入: ["flower","flow","flight"]输出: "fl" ...
分类:
编程语言 时间:
2019-06-29 14:51:50
阅读次数:
138
公众号:爱写bug Write a function to find the longest common prefix string amongst an array of strings. If there is no common prefix, return an empty string ...
分类:
其他好文 时间:
2019-06-29 00:47:49
阅读次数:
93
编写一个函数来查找字符串数组中的最长公共前缀。 如果不存在公共前缀,返回空字符串 ""。 示例 1: 输入: ["flower","flow","flight"]输出: "fl"示例 2: 输入: ["dog","racecar","car"]输出: ""解释: 输入不存在公共前缀。说明: 所有输入 ...
分类:
其他好文 时间:
2019-06-28 22:30:27
阅读次数:
117
编写一个函数来查找字符串数组中的最长公共前缀。 如果不存在公共前缀,返回空字符串 ""。 示例 1: 示例 2: 说明: 所有输入只包含小写字母 a-z 。 代码: 编写一个函数来查找字符串数组中的最长公共前缀。 如果不存在公共前缀,返回空字符串 ""。 示例 1: 示例 2: 说明: 所有输入只包 ...
分类:
其他好文 时间:
2019-06-02 14:15:20
阅读次数:
107