간단한 연습문제라서 10분? 안되게 걸린 것 같다.
단순하게 (
일 경우 스택에 삽입하고, )
일 경우 스택에서 꺼내는 작업을 하는데 그 때 스택이 비어있으면 False
가 된다.
처리가 끝난 후 스택에 남아있는 괄호가 있으면 역시 False
이다.
def solution(s):
answer = True
st = []
for b in s:
if b == '(':
st.append(b)
else:
if st:
st.pop()
else:
answer = False
break
if st: answer = False
return answer