https://programmers.co.kr/learn/courses/30/lessons/12909
카카오 문제중에 유사한 문제가 있었던 것 같다.
스택 자료구조를 활용해 조건에 따라 작성해주었다.
def solution(s):
stack=[]
stack.append(s[0])
for i in range(1,len(s)):
next_value=s[i]
if len(stack)==0:
stack.append(next_value)
continue
now=stack.pop()
if now=="(":
if next_value==")":
continue
else:
stack.append(now)
stack.append(next_value)
else:
stack.append(now)
stack.append(next_value)
if len(stack)>0:
return False
else:
return True
더 간단한 코드
def is_pair(s):
# 함수를 완성하세요
open_cnt = 0
for c in s:
if c == '(':
open_cnt += 1
elif c == ')':
open_cnt -= 1
if open_cnt < 0:
return False
return open_cnt == 0