취준생의 코딩테스트 연습기

[백준] 4949번 균형잡힌 세상 / 파이썬(python) 본문

코딩테스트/백준

[백준] 4949번 균형잡힌 세상 / 파이썬(python)

Jiwon_C 2021. 3. 24. 00:29

 

# 문제 링크

www.acmicpc.net/problem/4949

 

4949번: 균형잡힌 세상

하나 또는 여러줄에 걸쳐서 문자열이 주어진다. 각 문자열은 영문 알파벳, 공백, 소괄호("( )") 대괄호("[ ]")등으로 이루어져 있으며, 길이는 100글자보다 작거나 같다. 입력의 종료조건으로 맨 마

www.acmicpc.net

# Soultion

닫는 괄호가 나왔을 때 바로 break를 이용하여 종료하지말고, li에 값을 아무거나 넣고 종료해야함

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
31
while(True):
    li = []
    s = input()
    if s=='.':
        break
    for i in s:
        if i=='(' or i=='[':
            li.append(i)
 
        elif i==')':
            if len(li)==0:
                li.append('.')
                break
            elif li[-1!= '(':
                break
            else:
                li.pop()
        elif  i==']':
            if len(li)==0:
                li.append('.')
                break
            if li[-1!= '[':
                break
            else:
                li.pop()
    
    if li:
        print("no")
    else:
        print("yes")
        
cs

 

 
Comments