Minimum Insertion Steps to Make a String Palindrome LeetCode solution in Python

1
class Solution:
2
def minInsertions(self, s: str) -> int:
3
n = len(s)
4
prev_prev = [0] * n
5
prev = [0] * n
6
curr = [0] * n
7

8
for l in range(1, n):
9
for i in range(l, n):
10
if s[i] == s[i - l]:
11
curr[i] = prev_prev[i - 1]
12
else:
13
curr[i] = min(prev[i - 1], prev[i]) + 1
14
# print(curr)
15
prev_prev, prev, curr = prev, curr, prev_prev
16

17
return prev[-1]

0

WPM •0 •0

100%

ACC •0 •0

0s

TIME •0