class 2

n=int(input())
for _ in range(n):
    sum=0
    br=list(input())
    for i in br:
        if i=='(': sum += 1
        elif i==')' : sum -=1
        if sum<0:
            print("NO")
            break
    if sum>0 : print("NO")
    elif sum==0 : print("YES")

<코드 설명>
입력 받을 개수인 n을 먼저 입력받는다.
n번 for문을 반복해준다. 이 안에서 br라는 list를 입력받고, for문을 이용해 br의 문자 하나하나씩 검사하기로 하였다. (이면 sum에 1을 더해주었고, )이면 sum을 1 빼주어 만약 이미 0보다 작으면 괄호가 맞지 않으므로 NO를 출력한 후 break를 해주었다. sum이 0보다 클 경우, 이 또한 맞지 않는 경우이므로 NO를 출력해주었고, 0일 때에만 YES를 출력하도록 하였다.

<실행 결과>

'Algorithm > BOJ' 카테고리의 다른 글

[BOJ] 1251 단어 나누기  (0) 2022.05.28
[BOJ] 4949 균형잡힌 세상  (0) 2022.05.28
[BOJ] 1094 막대기  (0) 2022.05.22
[BOJ] 10814 나이순 정렬  (0) 2022.05.22
[BOJ] 1920 수 찾기  (0) 2022.05.22

+ Recent posts