자료구조,알고리즘(Python)/백준

백준 : 9012 (Python)

드롱드롱 2024. 8. 17. 12:55

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

num = int(input())

for _ in range(num):
    value = 0
    stack = []
    word = input()
    for i in word:
        if i == '(':
            stack.append('(')
        else:
            if len(stack) == 0:
                value = 1
                break
            stack.pop()
    if len(stack) != 0:
        value = 1
        
    if value == 0:
        print('YES')
    else:
        print('NO')

 

 

이제는 익숙해진 스택 문제이다.

1.스택 리스트를 만들고 append할 조건과 pop할 조건을 중심으로 스택 리스트를 활용한다.

2. 틀리는 요소에 변수 value값을 다르게 해주면 편하게 yes or no를 구분할 수 있다.

 

지금 약간 헷갈리는 개념은

1.break문 사용시 범위가 어디까지 break되냐

2.리스트 append의 정확한 범위(사용가능한)

정도가 되겠다.

 

차차 문제를 해결하며 헷갈리는 부분을 해결하도록 하자.

'자료구조,알고리즘(Python) > 백준' 카테고리의 다른 글

Python_(Binary search에 관한 문제들)  (1) 2024.09.03
(백준) 1463 : Python  (0) 2024.08.29
백준 : 17219(Python)  (0) 2024.08.23
백준:10816(Python)  (0) 2024.08.20
백준 : 1620 (Python)  (0) 2024.08.19