摘要: 转化为求A串一个区间和B串的最长公共子序列。预处理一个dp[i][j][k],表示从A串的i,B串的j开始,长度为k的公共子序列,在A串里的结尾位置最小是多少。转移从dp[i+1]转移到dp[i],考虑第i位选不选即可。回答询问时,枚举j,k,如果dp[L][j][k]<=R,可以用k更新答案 阅读全文
posted @ 2020-07-25 14:33 duyiblue 阅读(207) 评论(1) 推荐(0) 编辑
摘要: 如果已经知道结果串t,考虑s能不能得到t,可以做一个贪心“匹配”。知道这个贪心的策略后,考虑本题要计算所有t的数量,那么可以DP。设dp[i]表示有多少t能贪心匹配到s的前i位。转移时考虑t的下一位是1还是0即可。 阅读全文
posted @ 2020-07-25 13:47 duyiblue 阅读(436) 评论(0) 推荐(0) 编辑