题意:给n维图形,它们的边长是{d1,d2,d3...dn}, 对于两个n维图形,求满足其中一个的所有边长
按照任意顺序都一一对应小于另一个的边长,这样的最长序列的个数,并且打印任意一个最长子串的路径,
例如:a(9,5,7,3),b(6,10,8,2),c(9,7,5,1),a和b不满足,但c和b满足
分析:首先对没组边长从小到大排序,再对各组图形按最小边排序,再求最大子串,
对于打印路径,可以逆序循环,也可递归求解...
分类:
其他好文 时间:
2014-08-09 11:40:07
阅读次数:
245
XHXJ's LIS
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)
Total Submission(s): 809 Accepted Submission(s): 308
Problem Description
#define xhxj (Xin H...
分类:
其他好文 时间:
2014-08-08 18:13:46
阅读次数:
229
~\(≧▽≦)/~啦啦啦,昨天说的是LCS,今天我们要学习的是LIS,什么是LIS呢?LIS:最长有序子序列(递增/递减/非递增/非递减)这么说还是有些模糊,举个例子: 在一个无序的序列a1,a2,.....,am里,找到一个最长的序列,满足ai D[len],则将a[i]接在D[len]后将得到一...
分类:
其他好文 时间:
2014-08-08 18:00:26
阅读次数:
247
nlogn 的 最长上升子序列的求法。 用一个数的二进制位来表示哪几位有值, 每次插入的时候 ,要把在他后方位置的第一个数给删了。 设 从前到后 他是第i个数,长度为i的最长上升子序列的最后一位最小的值就是他在这个数中二进制所在的位置。 注意处理 0, 前面是0 ,是不能乱插的。#include ....
分类:
其他好文 时间:
2014-08-08 15:55:26
阅读次数:
228
题目:UVA - 10066The Twin Towers(LIS)
题目大意:求两个整数序列的最长公共子序列。
解题思路:和uva10405同样的思路。注意每组输出后面要输出空行,不然会WA。
代码:
#include
#include
const int N = 105;
int s1[N], s2[N];
int l[N][N];
int l1, l2...
题目:UVA - 10192Vacation(LIS)
题目大意:求两个字符串的最长公共子串。
解题思路:递推公式: s1【i】 = s2【j】 , l【i】[j] = l[i - 1] [j - 1] + 1;
s1【i]】!= s2【j】 , l【i】【j】 = Max (l[i - 1] [j]...
分类:
其他好文 时间:
2014-08-08 09:38:55
阅读次数:
176
题目的本意是求LCS,但由于每个序列的元素各不相同,所以将A序列重新编号{1,2,,,p+1},将B序列重新编号,分别为B中的元素在A中对应出现的位置(没有的话就是0)。在样例中就是A = {1 7 5 4 8 3 9},B = {1 4 3 5 6 2 8 9}重新编号以后:A = {1 2 3 ...
分类:
其他好文 时间:
2014-08-08 09:29:55
阅读次数:
341
poj 1836 Alignmenthttp://poj.org/problem?id=1836题意:有士兵n个,根据编号排为一列,但是身高不一,现在要求去掉几个人,使得剩下的每一个人可以向左或向右看到队头。问:至少去掉的士兵数。dp动态规划 之 双向LIS问题 1 /* 2 Problem: .....
分类:
其他好文 时间:
2014-08-07 22:33:28
阅读次数:
212
题目:uva10405 - Longest Common Subsequence(LIS,最长共同自序列)
题目大意:找出两个字符串中的最长公共的子序列。
解题思路:这类问题是第一次接触,不知道怎么做。百度了一下,发现了递推公式:dp【i】【j】:代表第一个字符串的前i个字符和第二个字符串的前j个字符比较能得到的最长的公共子序列。s【i】 == s【j】 ,dp【i】【j】...
分类:
其他好文 时间:
2014-08-06 23:04:32
阅读次数:
243
题目:uva10723 - Cyborg Genes(LIS)
题目大意:给出两个字符串,要求的到一个新的字符串,它保持了两个字符串的字符的特征,也就是可以在这个字符串中找到前两个字符串的子序列,求这样的字符串的最短长度和有多少种这样的不同的字符串。
解题思路:LIS。首先先要找出最长的公共子序列,这样得到的新的字符串的长度才会是最小:l1 + l2 - l【1】【N】;
l...
分类:
其他好文 时间:
2014-08-06 23:03:02
阅读次数:
272