动态规划思想 注意:子串和子序列的区别 子串一定时连续的,子序列不一定是连续的 首先清楚dp数组的含义 定义:dp[i]表示以nums[i]这个数结尾的最长递增子序列的长度 因为nums[3]=4,最长递增子序列为1,3,4,所以长度为3即dp[3]=3 既然是递增子序列,只要找到前面那些结尾比4小 ...
分类:
其他好文 时间:
2020-06-17 23:36:35
阅读次数:
57
Week10(线性DP)拿数问题、LIS&LCS 思路分析: LIS(longest increasing subsequence)最长上升子序列,意思是一个序列中递增的序列最大个数。首先要理解子串和子序列的概念。 (1)字符子串指的是字符串中连续的n个字符,如abcdefg中,ab,cde,fg等 ...
分类:
其他好文 时间:
2020-06-13 11:03:25
阅读次数:
60
一、区别 给定两个字符串,求LCS 最长公共子串 (Longest Common Substring): 要求是连续的字符串 最长公共子序列(Longest Common Subsequence):要求子字符串相对顺序不变即可 二、动态规划求解 1、最长公共子串 给定两个字符串A 和 B 用二维数组 ...
分类:
其他好文 时间:
2020-06-01 23:43:29
阅读次数:
64
A - Sorted Adjacent Differences 将这串数字按大小排序,找到中间那个做第一个,左一个右一个输出 int main() { int k,n,i,j,a[100010]; cin>>k; while(k--){ cin>>n; for(i=0;i<n;i++){ cin>> ...
分类:
其他好文 时间:
2020-05-29 22:56:58
阅读次数:
57
题目描述 :请从字符串中找出一个最长的不包含重复字符的子字符串,计算该最长子字符串的长度。 题目分析 留意最长子串和子序列不是一个概念。例如对“pwwkew”来说,最长子串是“wke”,“pwke”是其中一个子序列。 在不考虑时间的情况下,直接暴力法对所有的子串进行检查。复杂度是$O(N^3)$,会 ...
分类:
编程语言 时间:
2020-04-06 23:35:30
阅读次数:
68
首先我们发现,因为可以在任意地方翻转,所以最后的答案就是一个合法子串和他的补集的子集中个数和最大的那个 因此我们先枚举每一个合法状态,记录他的合法个数有几个。 然后我们从头枚举每一个状态,计算状态的子集中的最大个数。 这样我们最后只要枚举状态和补集,就能计算出真正的答案了 #include<iost ...
分类:
其他好文 时间:
2020-03-03 10:55:02
阅读次数:
72
[LuoguP4094] [HEOI2016] [TJOI2016]字符串(二分答案+后缀数组+ST表+主席树) 题面 给出一个长度为$n$的字符串$s$,以及$m$组询问.每个询问是一个四元组$(a,b,c,d)$,问$s[a,b]$的所有子串和字符串$s[c,d]$的最长公共前缀长度的最大值。 ...
分类:
编程语言 时间:
2020-01-31 20:57:00
阅读次数:
86
题目链接(点击直达) 问题 B: X额宝 时间限制: 1 Sec 内存限制: 256 MB提交: 46 解决: 33[状态] [提交] [命题人:外部导入] 题目描述 【理财有风险,投资需谨慎】Alice计划将自己的所有红包拿去投资。在粗略预测了该理财产品的各日收益后,Alice希望通过一次买卖获得 ...
分类:
其他好文 时间:
2020-01-30 23:14:30
阅读次数:
90
"题目" 正解 一听到正解是NTT,我心态崩了。 我特么知道是NTT都不知道该怎么做!哪里像个卷积了? 好吧,是我孤陋寡闻…… 设两个字符串分别为$A$和$B$ 可以考虑试着计算出$A$每个子串和$B$的相似度(就是位置相同、字母相同的个数),直接统计就完事了。 看到字符集这么小,就可以对于每个字母 ...
分类:
其他好文 时间:
2020-01-28 20:56:56
阅读次数:
65
题意:给你一串只含小写字母字符串,和几个可用字母,求用所给字母能表示所给字符串中的子串数量。 思路:题中已给出(n个字符的)子串和该子串能分解出多少子串的数量关系:n*(n+1)/2。所以找出每一段子串,求该段子串能分成多少子子串,求出数量之和即可。 特别注意要用long long int,否则会超 ...
分类:
其他好文 时间:
2020-01-13 21:52:36
阅读次数:
74