HDU4681_String】的更多相关文章

这个题目是这样的. 给你三个字符串A,B,C,(C一定是A和B的一个公共子序列). 现在要求你构造出一个串D,使得D同时为A和B的子序列,且C是D的一个连续子串.求D的最大可能长度. 很简单的一个DP题. 其实这个题目有三个预处理就可以搞定了. 1.f1[i][j]:A的前i个字符,B的前J个字符的最长公共子序列. 2.f2[i][j]:A的i个字符以后,B的第J个字符以后的字符的最长公共子序列. 3.A和B串以某个位置开始作为C的子序列时,最近的匹配距离(最近匹配完的那个地方). 有了这三个预…