单调递增最长子序列
时间限制:3000 ms | 内存限制:65535 KB
难度:4
描述求一个字符串的最长递增子序列的长度
如:dabdbf最长递增子序列就是abdf,长度为4
输入第一行一个整数0
随后的n行,每行有一个字符串,该字符串的长度不会超过10000
输出输出字符串的最长递增子序列的长度
样例输入
3
aaa
ababc
abklm...
分类:
其他好文 时间:
2015-05-02 15:17:25
阅读次数:
123
分析:最长子序列的变种;另外长方体可以有三种放法,三种放法都存在同一个数组里面,因为每种长方体可以有无限个。
#include
#include
using namespace std;
struct BOX
{
int x,y,z;
} box[100];
int dp[100];
bool cmp(BOX a,BOX b)
{
if(a.x>b.x) return true;
e...
分类:
其他好文 时间:
2015-04-30 14:24:20
阅读次数:
131
http://poj.org/problem?id=2955
题目大意是给你一个字符串,字符串由中括号和小括号组成,问该串里的最长的一个符合数学括号匹配规范的子序列是多长。
一开始打算用传说中的左闭右开区间来写,后来发现果然不适合我,还是换回左闭右闭区间写了。
dp的思路比较简单,dp[i][j] 表示从 i 到 j 的串种符合括号匹配的最长子序列。对于任意一个区间均可以存在一个...
分类:
其他好文 时间:
2015-04-30 08:53:25
阅读次数:
128
//对每个数进行一个编号,
//dp[i][j]表示第i个数其前面是第j个数得到的最长子序列
//dp[i][j] = dp[i][j] = dp[last[j]][map[num[i]]] + 1;
//last[j]是编号为j的数的最后出现的位置
//map[num[i]]第i个数的编号
#include
#include
#include
using namespace s...
分类:
其他好文 时间:
2015-04-29 23:31:45
阅读次数:
126
题目,就是首先输入两个串的长度,
接着输入两个串
n = 4
m = 4
s = "abcd"
t = "bcde"
输出:
3 (“bcd”)
就是公共的最长子序列。
解题分析:
对于这种题目,首先要推倒转移方程,那么这里可以先定义二维数组dp[ i ] [ j ]
然后根据串 s 和 t 的长度 i , j来定义方程
s1....si...
分类:
其他好文 时间:
2015-04-23 10:56:28
阅读次数:
126
单调递增最长子序列时间限制:3000ms | 内存限制:65535KB难度:4描述求一个字符串的最长递增子序列的长度如:dabdbf最长递增子序列就是abdf,长度为4输入第一行一个整数0#includeint main(){ int n,m,j,i,l,sum;; char s[10100]; i...
分类:
其他好文 时间:
2015-04-09 19:14:13
阅读次数:
129
单调递增最长子序列时间限制:3000ms | 内存限制:65535KB难度:4描述求一个字符串的最长递增子序列的长度如:dabdbf最长递增子序列就是abdf,长度为4输入第一行一个整数0 #include#includeusing namespace std;char s[10001];int d...
分类:
其他好文 时间:
2015-04-08 01:00:57
阅读次数:
119
题目链接:点击打开链接
题意:
一个数自身的最长子序列=每一位都是一个数字然后求的LIS
问区间内有多少个数 自身的最长子序列==k
思路:
因为自身的最长子序列至多=10,且由0~9组成,所以状压10个二进制表示0~9中哪些数字已经用过
dp[i][j] 表示长度为i的数字,最长子序列中出现的数字状态j的方法数。由于询问数=K,也存下来避免重复计算。
#includ...
分类:
其他好文 时间:
2015-04-01 21:55:13
阅读次数:
255
单调递增最长子序列时间限制:3000ms | 内存限制:65535KB难度:4描述求一个字符串的最长递增子序列的长度如:dabdbf最长递增子序列就是abdf,长度为4输入第一行一个整数0#include#includeusing namespace std;int dp[10010];char s...
分类:
其他好文 时间:
2015-04-01 19:51:45
阅读次数:
149
链接:http://www.cnblogs.com/CCBB/archive/2009/04/25/1443455.html最大子序列和问题问题描述:输入一组整数,求出这组数字子序列和中最大值。也就是只要求出最大子序列的和,不必求出最大的那个序列。例如:序列:-2 11 -413 -5 -2,则最大...
分类:
其他好文 时间:
2015-03-20 20:25:59
阅读次数:
206