Baekjoon 9012번 괄호

노그리·2022년 4월 30일
0

📑 Algorithm

목록 보기
6/15

💭 문제가 궁금하다면?

내가 시도한 방법

🔴 Pass한 코드

  • 처음에는 습관처럼 배열(stack)을 만들고, appendpop을 이용했다.
  • 하지만 생각해보면 배열 안에 있는 요소를 활용하지도 않고, 배열의 사이즈가 필요한 거기 때문에 stack을 int 자료형으로 사용하는 방법으로도 문제를 해결 할 수 있었다.
N = int(input())

for _ in range(N):
    stack = 0
    string = input()
    for char in string:
        if char == '(':
            stack += 1
        else:
            if not stack:
                break
            stack -= 1
    else:
        if not stack:
            print('YES')
            continue
    print('NO')
    
    
# 처음 풀었던 방식

# N = int(input())
# for _ in range(N):
#     stack = []
#     result = 'NO'
#     string = input()
#     for char in string:
#         if char == '(':
#             stack.append(char)
#         elif not stack:
#             break
#         else:
#             stack.pop()
#     else:
#         if not stack:
#             result = 'YES'
#     print(result)

profile
자기소개가 싫어요

0개의 댓글