def solution(s):
def check(check_string):
stack = []
for char in check_string:
if char not in table:
stack.append(char)
elif not stack or table[char] != stack.pop():
return False
# stack = list('{{{{{{') 의 경우 통과 못함
if len(stack) == 0:
return True
else:
return False
answer = 0
table = {
')' : '(',
'}' : '{',
']' : '['
}
for i in range(len(s)):
left = s[:i]
right = s[i:]
new = right + left
if check(new):
answer += 1
return answer
print(solution("{{{{{{{"))
leetcode의 문제([스택] Valid Parentheses)에 문자열 회전까지 추가한 문제이다. 스택의 stack.append()
와 stack.pop()
를 활용해야 한다.
문제를 풀어봤던 것이 큰 도움이 됐다. 문제는 많이 풀수록 도움이 된다.