题解 | 最长回文子序列

最长回文子序列

https://www.nowcoder.com/practice/82297b13eebe4a0981dbfa53dfb181fa


s = input()
n = len(s)
dp = [[0 for _ in range(n)] for _ in range(n)]
#dp[i][j]表示i,j区间内容最长回文子串
for i in range(n-1,-1,-1):
    dp[i][i] =1
    for j in range(i+1,n):
        if s[i] == s[j]:
            dp[i][j] = dp[i+1][j-1] +2
        else:
            dp[i][j] = max(dp[i+1][j],dp[i][j-1])


print(dp[0][n-1])
     


全部评论

相关推荐

缒梦&独舞:这家公司是这样的,去年给我实习offer了,不过也是面着玩儿的,他周六还要去做公益志愿活动
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务