单调递增最长子序列
时间限制:3000 ms | 内存限制:65535 KB
难度:4
描述
求一个字符串的最长递增子序列的长度
如:dabdbf最长递增子序列就是abdf,长度为4
输入
第一行一个整数0
随后的n行,每行有一个字符串,该字符串的长度不会超过10000
输出
输出字符串的最长递增子序列的长度
样例输入
3aaaababcabklmncdefg
样例输...
分类:
其他好文 时间:
2014-08-05 09:39:58
阅读次数:
179
题意:给你一个数n,接下来给你一个矩形体的3边长(即随便你怎么放它,它的高度有可能是3边中的一条边),现在要你求出这n个矩形体能堆成一座塔的最高高度(塔就是面积从店面开始向上严格递增)
思路:动规里的最长子序列的变形,结合了贪心的思想。首先我们需要对你所用的高进行排序,排序之后找出最严格递减的面积就可以了
AC代码:
#include
#include
#include
#include
u...
分类:
其他好文 时间:
2014-08-04 17:57:17
阅读次数:
195
两个都是最长上升子序列,所以就放一起了1631 因为长度为40000,所以要用O(nlogn)的算法,其实就是另用一个数组c来存储当前最长子序列每一位的最小值,然后二分查找当前值在其中的位置;如果当前点不能作为当前最长子序列的最大值,则更新找到值为两者间的较小值。2533 就是一个裸的最长上升子序列...
分类:
其他好文 时间:
2014-07-30 20:13:04
阅读次数:
230
题意:输入N个DNA序列,每个DNA序列长度都为60。找到这些串的最长共有子序列。
注:若找不到,或最长子序列长度小于2,则输出no significant commonalities,否则输出最长公共子串,若长度相同输出字典序最小的
思路:暴力枚举第一个DNA序列的每一个子序列,用strstr()函数与其余的序列进行匹配...
分类:
其他好文 时间:
2014-07-26 02:50:36
阅读次数:
162
最长子序列和的问题。
时间复杂度从O(n3)到O(n)...
分类:
编程语言 时间:
2014-07-24 10:40:34
阅读次数:
216
对于最长不重复子串,某个当前的字符,如果它与前面的最长不重复子串中的字符没有重复, 那么就可以以它为结尾构成新的最长子串;如果有重复,且重复位置在上一个最长子串起始位置之后, 那么就与该起始位置之后的稍短的子串构成新的子串或者单独成一个新子串。 举个例子:例如字符串“abcdeab”,第二个字符a....
分类:
其他好文 时间:
2014-07-16 21:11:39
阅读次数:
130
最近学习了一下erlang, 编了个小程序
算法如下:
把参数分为三个
当前位置的前子序列(Save)(比如 -5, 1,2,-1, _, ... ) 前位置为_时, 前子序列就是 1,2,-1
以及此子序列的和(CurSum) ( 1,2,-1的 CurSum 是 2)
剩余的数 Rest; 剩余的数也可以表示为 [H|T] ,H是第一元素,T为剩余的元素是列表
...
分类:
其他好文 时间:
2014-07-15 12:38:22
阅读次数:
216
abractyeyt,dgdsaeactyey的最长子串为actyeyconst int maxSize = 100;char suffix[2][maxSize][maxSize];int max_sub(char* s1, int len1, char* s2, int len2){ fo...
分类:
其他好文 时间:
2014-07-06 18:13:00
阅读次数:
150
VLSM (Variable Length Subnet Mask:可变长子网掩码)
VLSM的定义:为了有效的使用无类别域间路由(CIDR)和路由汇总来控制路由表的大小,网络管理员使用先进的IP寻址技术,VLSM就是其中的常用方式。
VLSM的作用:在类的IP地址的基础上,从主机号部分借出相应的位数来做网络号,也就是增加网络号的位数。使用可变长度子网掩码的目的,就...
分类:
其他好文 时间:
2014-06-10 06:24:20
阅读次数:
265
无类别(现在)无类别域间路由(Classless Inter-Domain
Routing、CIDR)是一个用于给用户分配IP地址以及在互联网上有效地路由IP数据包的对IP地址进行归类的方法。CIDR用可变长子网掩码
(VLSM,Variable Length Subnet Masking),根据各...
分类:
Web程序 时间:
2014-06-09 13:14:04
阅读次数:
389