문자열 조작 추가문제
Question: 유효한 팰린드롬 2
Given a string s, return true if the s can be palindrome after deleting at most one character from it.
입력: s = “abca”
출력: true
내 풀이
class Solution:
def validPalindrome(self, s: str) -> bool:
left, right = 0, len(s) - 1
while left < right:
# left값과 right값이 다를때 비교한다.
if s[left] != s[right]:
# s[left] 와 s[right] 중 어느 것이 palindrome이 되는 걸 막는지 모르므로 각자를 뺀 경우를 가정하여 변수를 생성한다.
one,two = s[left:right], s[left+1:right+1]
# 두 변수 중 어느 하나라도 palindrome 이면 True를 리턴한다.
return one==one[::-1] or two==two[::-1]
left += 1
right -= 1
return True
결과
Runtime: 129 ms, faster than 71.74% of Python3 online submissions for Valid Palindrome II.
Memory Usage: 14.4 MB, less than 92.13% of Python3 online submissions for Valid Palindrome II.
Comments