最多删除一个字符,判断是否能构成回文字符串。
b = a[i:j] 表示复制a[i]到a[j-1]
a[::-1]相当于倒序,也就是从最后一个元素到第一个元素复制一遍
class Solution:
def validPalindrome(self, s: str) -> bool:
if s == s[::-1]: return True
i,j=0,len(s)-1
while i<j:
if s[i]==s[j]:
i,j=i+1,j-1
else:
a=s[i+1:j+1]
b=s[i:j]
return a==a[::-1] or b==b[::-1]