表示
串的前個與b串的前個的最長公共子序列的長度。則:
for(int i=1;i<=len;i++) {
for(int j=1;j<=len;j++) {
if(a[i-1]==b[j-1])dp[i][j]=dp[i-1][j-1]+1;
else dp[i][j]=Math.max(dp[i-1][j], dp[i][j-1]);
}
}
dp[i][j]表示
a串的前i個與b串的前j個的最長公共子序列的長度。則:
dp[i][j]={max(dp[i−1][j],dp[i][j−1])dp[i−1][j−1]+1a[i]!=b[i]a[i]=b[i]
for(int i=1;i<=len;i++) {
for(int j=1;j<=len;j++) {
if(a[i-1]==b[j-1])dp[i][j]=dp[i-1][j-1]+1;
else dp[i][j]=Math.max(dp[i-1][j], dp[i][j-1]);
}
}
工具方法 /** * 十六進制字符串轉字符串 * * @author 靜心事成 * @param str 原16進制字符串 * @return 字符串 * */ public static Strin
Periodicity Lemma的證明 模板題: SDOI2017 文本校正 接下來是bonus time 看完這篇博客 然後做這個更可做的題: