Algorithm/프로그래머스
[Python] 프로그래머스 Lv2 - 올바른 괄호
떵호
2022. 6. 14. 23:07
728x90
🔗 문제링크
코딩테스트 연습 - 올바른 괄호
괄호가 바르게 짝지어졌다는 것은 '(' 문자로 열렸으면 반드시 짝지어서 ')' 문자로 닫혀야 한다는 뜻입니다. 예를 들어 "()()" 또는 "(())()" 는 올바른 괄호입니다. ")()(" 또는 "(()(" 는 올바르지 않은
programmers.co.kr
📂 분류
스택
💡 풀이
스택의 대표적인 문제이다.
접근 방식
- '(' 일 경우 stack에 저장한다.
- ')' 일 경우 stack이 비어있는지 확인하고 비어있다면 False 리턴한다.
- 비어있지 않다면 pop 시킨다.
- 올바른 괄호일 경우 stack의 사이즈는 0이기 때문에 0이라면 True, 0이 아니라면 False를 반환한다.
💻 코드
def solution(s):
stack = []
for i in range(len(s)):
if s[i] == '(':
stack.append('(')
else:
if len(stack) == 0:
return False
else:
stack.pop()
return len(stack) == 0
728x90