티스토리 뷰


'(' 일때는 카운트를 1 올리고 ')' 일때는 카운트를 1 내리면서

카운트가 음수값이면 반복문을 종료하고 False를 반환한다.

반복문이 종료했을때는 '('의 갯수와 ')'의 갯수가 같을때 True를 반환한다.

문제풀이

def is_pair(s):
    cnt = 0
    
    pair = [(i) for i in s if i in ('(',')')]
    for rpt in range(0, len(pair)):
        if pair[rpt] in '(':
            cnt += 1
        elif pair[rpt] in ')':
            cnt -= 1
        if cnt < 0:
            return False
    return pair.count('(') == pair.count(')')

# 아래는 테스트로 출력해 보기 위한 코드입니다.
print( is_pair("(hello)()"))
print( is_pair("()())(()"))


댓글
«   2025/11   »
1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30
Total
Today
Yesterday