Expenditure Reduction ( DP )

题目大意: 给定你一个字符串,然后在给你一个这个字符串的子序列, 然后问你最短子字符串的最小长度是多少才能把子序列给包含进去, n=1e6, 子序列=100;

思路:

  • 为了让他最短, 首尾靠齐嘛, 按前到后推时, 就选合法的首位在后面. 
  • 遇事不决, DP
  • dp[i][j], j 是子序列的第几个, 然后这个dp值保存 合法的越靠近后面的首字母在哪里, 遇到末尾字母更新一下
  • 但 s1[i]==s2[j] 时 且不是首尾字母时 dp[j]=dp[j-1]; 前面第一维度不用管, 可以滚动掉 是首字母就更新 dp[j]=i;

 

posted @ 2022-10-17 10:13  VxiaohuanV  阅读(56)  评论(0)    收藏  举报