From 4e95701e616dd12bda60b675a8d22dec274559e7 Mon Sep 17 00:00:00 2001 From: izatwin Date: Tue, 7 May 2024 12:15:40 -0400 Subject: [PATCH] 5 Longest Palindomic Substring --- .../solution.py | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) create mode 100644 medium/5 Longest Palindromic Substring/solution.py diff --git a/medium/5 Longest Palindromic Substring/solution.py b/medium/5 Longest Palindromic Substring/solution.py new file mode 100644 index 0000000..4b2eed8 --- /dev/null +++ b/medium/5 Longest Palindromic Substring/solution.py @@ -0,0 +1,19 @@ +class Solution: + def longestPalindrome(self, s: str) -> str: + if len(s) <= 1: + return s + + + dp = [[False for _ in range(len(s))] for _ in range(len(s))] + + max_length = 1 + max_string = s[0] + for i in range(len(s)): + dp[i][i] = True + for j in range(i): + if s[j] == s[i] and (i-j <= 2 or dp[j+1][i-1]): + dp[j][i] = True + if i-j+1 > max_length: + max_length = i-j+1 + max_string = s[j:i+1] + return max_string