반응형
Notice
Recent Posts
Recent Comments
Link
관리 메뉴

짧은코딩

9012 괄호 본문

코딩 테스트(Python)/백준, 프로그래머스

9012 괄호

5_hyun 2022. 2. 8. 01:56
반응형

https://www.acmicpc.net/problem/9012

 

9012번: 괄호

괄호 문자열(Parenthesis String, PS)은 두 개의 괄호 기호인 ‘(’ 와 ‘)’ 만으로 구성되어 있는 문자열이다. 그 중에서 괄호의 모양이 바르게 구성된 문자열을 올바른 괄호 문자열(Valid PS, VPS)이라고

www.acmicpc.net

 

내 풀이(맞음)

n = int(input())
rst = []
for i in range(n):
    ary = []
    x = input()
    for j in range(len(x)):
        if x[j] == "(":
            ary.append('(')
            if j == len(x) - 1:
                rst.append("NO")
        else:
            if ary:
                ary.pop()
                if j == len(x) - 1 and len(ary) == 0:
                    rst.append("YES")
                elif j == len(x) - 1 and len(ary) != 0:
                    rst.append("NO")
            else:
                rst.append("NO")
                break
for i in rst:
    print(i)

n번 만큼 반복하면서 입력을 받습니다. 그리고 만약에 '('이면 ary에 넣습니다. 근데 마지막 문자가 '('이면 괄호가 닫힐 수 없습니다. 그리고 ')'이면 ary에서 1개를 pop해줍니다. 만약 마지막 괄호고 ary가 비어있으면 완벽한 괄호라 YES이고 ary가 안비었으면 NO입니다. 그리고 ')' 괄호가 남아있는데 ary가 비어있으면 No입니다.

반응형

'코딩 테스트(Python) > 백준, 프로그래머스' 카테고리의 다른 글

10773 제로  (0) 2022.02.08
1920 수 찾기  (0) 2022.02.08
10866 덱  (0) 2022.02.07
10845 큐  (0) 2022.02.07
10828 스택  (0) 2022.02.05
Comments