题解 | #合并回文子串#

合并回文子串

https://ac.nowcoder.com/acm/problem/13230

  1. dp类题目我个人感觉最难的是初始化... 可能是我太弱了 初始化问题始终困扰我,对于区间dp 初始化最小区间即可,推出之后大区间所需要的最小区间 下面关于此题
  2. 对于状态: 这种两个串的基本都是dp[i][j][l][r]方程较为简单
if(a[j]==a[i])dp[i][j][l][r]|=dp[i+1][j-1][l][r];
if(a[j]==b[l])dp[i][j][l][r]|=dp[i][j-1][l+1][r];
if(b[r]==a[i])dp[i][j][l][r]|=dp[i+1][j][l][r-1];
if(b[r]==b[l])dp[i][j][l][r]|=dp[i][j][l+1][r-1];
  1. 区间dp套路:先枚举区间大小 (因为是从小到大这种转移顺序) 然后枚举左端点i,右端点j=i+len-1;注意范围 初始化最小的区间(因为无法被转移到,是初始值)这题易知是两个串所取总长度为1时dp=1;故if(d1+d2<=1)dp[i][j][l][r]=1;
全部评论

相关推荐

吴offer选手:学到了,下次面试也放张纸在电脑上,不然老是忘记要说哪几个点
点赞 评论 收藏
分享
被加薪的哈里很优秀:应该继续招人,不会给你留岗位的
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务