SWEA 1218. 괄호짝짓기(Python)(D4)

Wjong·2023년 2월 1일
0

swea

목록 보기
18/36


딕셔너리에는 '[<({'를 넣어두고 확인한다.
입력받은 문자열 S를 순회하면서

  • i가 닫는괄호일 경우
    - 여는괄호가 0보다 작으면 결과0, 순회종료
    • 여는괄호가 0보다 크면 딕셔너리의 여는괄호값 -1
  • i가 여는괄호일 경우, 딕셔너리에 +1
res=[]
for m in range(10):
    tmp=1
    _=input()
    S=input()
    dic={'[':0,'{':0,'(':0,'<':0}
    for i in S:
        if i==')':
            if dic['(']<=0:
                tmp=0
                break
            else:
                dic['(']-=1
        elif i==']':
            if dic['[']<=0:
                tmp=0
                break
            else:
                dic['[']-=1
        elif i=='}':
            if dic['{']<=0:
                tmp=0
                break
            else:
                dic['{']-=1
        elif i=='>':
            if dic['<']<=0:
                tmp=0
                break
            else:
                dic['<']-=1
        else:
            dic[i]+=1
    if i in dic:
        if dic[i]!=0:
            tmp=0
    res.append(tmp)
for i in range(len(res)):
    print("#%d %s"%(i+1,res[i]))
profile
뉴비

0개의 댓글