julia coding story
[프로그래머스] 괄호 회전하기 python 본문
728x90
https://school.programmers.co.kr/learn/courses/30/lessons/76502
프로그래머스
SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프
programmers.co.kr
음.. 쉬운거 같은데 고려를 좀 해야하는 것들 있음
13,14번 케이스를 몰랐는데,,
13번은 check리스트에 남은 len이 없어야하는 부분 고려 못했고
14번은 "{(})" 이런 경우를 고려하지 못함.
알아야할 것.
1. string to list
s = list(s) 변경
2. pop(), append() - stack 이용
: stack 이용
3. list[-1]
: 마지막 인덱스
정답
def solution(s):
answer = 0
s = list(s)
def sol2(s):
check = []
for i in s:
if i == "[" or i == "(" or i == "{":
check.append(i)
elif i == "]":
if len(check) > 0 and check[-1] == "[" :
check.pop()
else:
return False
elif i == "}":
if len(check) > 0 and check[-1] =="{" :
check.pop()
else:
return False
elif i == ")":
if len(check) > 0 and check[-1] == "(":
check.pop()
else:
return False
if len(check) == 0:
return True
else:
return False
for i in range(len(s)):
a = s.pop(0)
s.append(a)
if sol2(s) == True:
answer += 1
return answer