题意:找到体重递增速度递降的最长序列
分析:和最长递增子序列一样,不过这里先做处理:先把体重按递增排序,然后找最长递降子序列即可
代码:
#include
#include
#include
using namespace std;
struct node{
int w,s;
int t;
}a[2000];
int n,i;
struct h{
int x;
int pre;
}d...
分类:
其他好文 时间:
2015-06-14 18:42:23
阅读次数:
129
求最长连续子序列的长度,数字保存在数组中使用动态规划算法,理解状态转移,dp[i]表示i位置下的最大连续子序列长度。
初始状态dp[0] = 1,表示在数组下标为0的时候,它的最长子序列长度就是1,
接着从1开始从左到右扫描,如果后一个数大于前一个数,则它的最长子序列长度增加1,否则,
此位置的最长子序列长度置为1,同时记录下当前的最大子序列长度;
最后返回记录的最大连续子序列变量。代码如下:Cod...
分类:
编程语言 时间:
2015-06-14 09:34:41
阅读次数:
197
单调递增最长子序列时间限制:3000ms | 内存限制:65535KB难度:4描述求一个字符串的最长递增子序列的长度如:dabdbf最长递增子序列就是abdf,长度为4输入第一行一个整数0 2 #include 3 int main() 4 { 5 int n; 6 scanf("%...
分类:
其他好文 时间:
2015-06-03 15:20:57
阅读次数:
91
时间限制:3000 ms | 内存限制:65535 KB
难度:4
描述
求一个字符串的最长递增子序列的长度
如:dabdbf最长递增子序列就是abdf,长度为4
输入
第一行一个整数0
随后的n行,每行有一个字符串,该字符串的长度不会超过10000
输出
输出字符串的最长递增子序列的长度
样例输入...
分类:
其他好文 时间:
2015-06-01 09:38:31
阅读次数:
112
题意:
输出体重上升而速度下降的最长子序列
题意:
先按照结构体升序排序体重,之后用dp对速度求最长下降子序列即可。
代码:#include
#include
#include
#include
#include
#include
#include
#include
#inc...
分类:
编程语言 时间:
2015-05-24 10:12:51
阅读次数:
139
单调递增最长子序列描述求一个字符串的最长递增子序列的长度如:dabdbf最长递增子序列就是abdf,长度为4输入第一行一个整数0intlength(char*s){intlen[128]={0},i,t;for(;*s!='\0'&&(t=len[*s-1]+1);s++)for(i=*s;i<12...
分类:
其他好文 时间:
2015-05-23 16:46:00
阅读次数:
120
最长子序列和的问题非常easy:就是一个数组,求出当中当中连续的某一段和,而这一段和是全部的连续段和的最大的值。求出这个值。先说复杂度最高的:O(n3)直接上代码,非常easy的://// main.cpp// SumSequence//// Created by Alps on 14-7-2...
分类:
编程语言 时间:
2015-05-18 20:26:46
阅读次数:
169
一道经典的最长子序列题,不过该题需要维护两个量,体重和速度,所以需要先对一个量进行排序,然后剩下的那个量就可以像处理最长子序列那样做了。 值得一提的是该题需要打印路径,最好的方法是用一个数组pre运用类似链表的结构,来记录路径。 这恰恰就是紫书上数据结构那章例题14中所用的记录最短路路径的方法 。 其中的巧妙和实现细节请读者细细品味。
针对这道题, 由于dp是利用之前计算的结果进行递推得到的,...
分类:
其他好文 时间:
2015-05-18 16:46:49
阅读次数:
122
题意:求一个环的最长回文序列,是序列不是串链接:点我起点是可以任意的,所以只要求出每个区间的最长回文序列之后取max(dp[1][i]+dp[i+1][n]),即可得最终答案本来是想扩展两倍的,但是后来的最大不太好想将 环倍增成链,求出窗口为n的最长子序列,但这不是最终的解,你可以试看看Sample...
分类:
其他好文 时间:
2015-05-07 06:19:47
阅读次数:
114
题目:poj 1952 BUY LOW, BUY LOWER
题意:给出一个序列,先求最长单调递减子序列,然后求在子序列最长的情况下,不同的长度都为最长的的子序列的个数。(比如3,2,1和3,2,1属于相同,只能算一个)分析:首先用一个dp【i】表示到当前i点的最长子序列的长度
用dp2【i】表示最长为dp【i】的子序列的个数
然后dp【i】 = max(dp【j】)+1 (1<=j/****...
分类:
其他好文 时间:
2015-05-03 16:03:44
阅读次数:
146