From 75c109802bf3b6c86606d8c481bbc6c80c4d1da5 Mon Sep 17 00:00:00 2001 From: Jayit Saha <45602643+ricksaha2000@users.noreply.github.com> Date: Thu, 15 Oct 2020 20:05:58 +0530 Subject: [PATCH] Create LongestPalindromicSubsequence.py --- LongestPalindromicSubsequence.py | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) create mode 100644 LongestPalindromicSubsequence.py diff --git a/LongestPalindromicSubsequence.py b/LongestPalindromicSubsequence.py new file mode 100644 index 0000000..11f0107 --- /dev/null +++ b/LongestPalindromicSubsequence.py @@ -0,0 +1,16 @@ +def longestPalindromeSubseq(self, s: str) -> int: + n = len(s) + dp = [[0]*(n) for _ in range(n) ] + + for i in range(n): + dp[i][i] = 1 + + + for i in range(n-1, -1, -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][j-1], dp[i+1][j]) + + return dp[0][-1]