def solution(s):
num_left = 0
for i in s:
if i == "(":
num_left += 1
else:
num_left -= 1
if num_left < 0:
return False
if num_left == 0:
return True
return False
간단하게 ( 이면 1을 더하고 ) 면 1을 빼는 방식으로 접근하면 된다.
for문 즉, s를 한바퀴 도는 도중에 음수로 넘어가면 올바르지 않은 괄호 확정이며
다 돌았을 때 0이 아니면 올바르지 않은 괄호이다.
'파이썬 코딩테스트 > 프로그래머스' 카테고리의 다른 글
| 프로그래머스 / JadenCase / 파이썬 (0) | 2022.09.17 |
|---|---|
| 프로그래머스 / 프린터 / 파이썬 (0) | 2022.09.14 |
| 프로그래머스 / 이진 변환 반복하기 / 파이썬 (0) | 2022.09.13 |
| 프로그래머스 / 최댓값과 최솟값 / 파이썬 (0) | 2022.09.13 |
| 프로그래머스 / 두 개 뽑아서 더하기 / 파이썬 (0) | 2022.03.02 |