Algorithm/Data Structure
(Python) - 프로그래머스 : 올바른 괄호
하눤석
2022. 1. 21. 12:22
728x90
https://programmers.co.kr/learn/courses/30/lessons/12909
- 해설 :
괄호로 이루어진 문자열이 주어질 때, 이 문자열이 올바른 괄호 문자열인지 판단하는 문제이다.
- 풀이 :
stack을 사용하는 가장 대표적인 문제라고 할 수 있다. stack에 괄호를 하나씩 넣으면서 짝이 맞으면 꺼내고 아니면 넣는다. 마지막에 stack에 원소가 있다면 올바르지 않고 없다면 올바른 괄호이다.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
|
def solution(s):
stack = [s[0]]
for i in s[1:]:
if stack:
if i == ")":
if stack[-1] == "(":
stack.pop()
else:
return False
else:
stack.append(i)
else:
stack.append(i)
return False if stack else True
|
cs |
320x100