Common Subsequence
Time Limit: 1000MS
Memory Limit: 10000K
Total Submissions: 39128
Accepted: 15770
Description
A subsequence of a given sequence is the given seque...
分类:
其他好文 时间:
2014-10-29 17:06:06
阅读次数:
261
LIS(最长递增子序列)和LCS(最长公共子序列)的总结
最长公共子序列(LCS):O(n^2)
两个for循环让两个字符串按位的匹配:i in range(1, len1) j in range(1, len2)
s1[i - 1] == s2[j - 1], dp[i][j] = dp[i - 1][j -1] + 1;
s1[i - 1] != s2[j - 1], dp...
分类:
其他好文 时间:
2014-10-29 17:04:45
阅读次数:
252
动态规划法
经常会遇到复杂问题不能简单地分解成几个子问题,而会分解出一系列的子问题。简单地采用把大问题分解成子问题,并综合子问题的解导出大问题的解的方法,问题求解耗时会按问题规模呈幂级数增加(分治思想,递归方法。往往会由于数据大导致递归层次过多而超时或爆栈,即使采用记忆化等优化策略,仍然可能解决不了问题)。...
分类:
其他好文 时间:
2014-10-28 17:46:42
阅读次数:
302
本本题中,我要求解l[7,6],那么我先找到表中第7行第6列的标记,发现是个向上的箭头,说明了l[7,6]=l[6,6], 此时我又找到l[6.,6],发现标记的是个左上角的箭头,说明此时的A包含在解数组里面,将它加入到解数组中,之后将问题规模缩小到了l[5,5],再看l[5,5]…..
在我查找的过程中,随着l[I,j]中i和j的变化,这个问题的规模在逐渐缩小,直至我们遇到l[I,j]=0时停止搜索。
再说我们构造上表的过程,构造的时候,我们是从底到顶构造的,但是在...
分类:
其他好文 时间:
2014-10-27 23:05:04
阅读次数:
257
Common SubsequenceTime Limit: 2000/1000 MS (Java/Others)Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 23973Accepted Submission(s): 10...
分类:
其他好文 时间:
2014-10-25 18:39:42
阅读次数:
206
题目:求两组字符串中最大的按顺序出现的相同单词数目。
分析:dp,最大公共子序列(LCS)。把单词整个看成一个元素比较即可。
状态:f(i,j)为s1串前i个单词与s2串前j个单词的最大匹配数;
转移:f(i,j)= max(f(i-1,j),f(i,j-1)){ s1[i] ≠ s2[j] };
...
分类:
其他好文 时间:
2014-10-23 16:17:30
阅读次数:
183
Palindrome
Time Limit: 3000MS
Memory Limit: 65536K
Total Submissions: 53414
Accepted: 18449
Description
A palindrome is a symmetrical string, that is, a string read ide...
分类:
编程语言 时间:
2014-10-16 21:42:53
阅读次数:
253
定义:
线性DP问题的子状态与父状态之间往往相差一个元素,所以子状态通过添加一个增量而转换到父状态。从最小的子问题到原问题,一层一层的状态转移呈现出线性递增的关系,所以称为线性DP。
经典的线性DP问题有最大字段和、最长公共子序列、最长回文子序列、最长不下降(下降)子序列等等。。。
大部分的线性DP都是1维的。
陆续更新线性DP的题。...
分类:
其他好文 时间:
2014-10-16 16:01:22
阅读次数:
198
本程序实现了字符串的最长公共子序列的方法:str[i,j]数组中保存str1,str2长度分别为0-i,0-j之间的最长公共子序列,s[i,j]数组中保存str1,str2长度分别为0-i,0-j之间的最长公共子序列的长度;
s[i,j]=0,i=0或者j=0
s[i,j]=s[i - 1, j - 1] + 1;str1[i]=str2[j]
s[i,j]=max{s[i - 1, j ],s[i , j-1 ] };str1[i]!=str2[j]...
题目:HDU 1503
思路:先求出最长公共子序列,记录路径。后进行拼接。
代码#include
#include
#include
#include
#include
#include
#define mod 1000000007
using namespace std;
typedef long long LL;
int dp[110][120];
char x[100],...
分类:
其他好文 时间:
2014-10-15 00:31:08
阅读次数:
208