백준 10799번 쇠막대기 (python)

Kim Yongbin·2023년 9월 23일
0

코딩테스트

목록 보기
73/162

Problem

10799번: 쇠막대기

Solution

import sys

sticks = sys.stdin.readline().strip()
stack = []

answer = 0
flag = False
for s in sticks:
    if s == "(":
        stack.append(s)
        flag = True

    else:
        stack.pop()
        if flag:
            answer += len(stack)
        else:
            answer += 1
        flag = False

print(answer)

레이저 ⇒ 이전 괄호가 “(”, 현재 괄호 ”)”

→ 현재 쌓여있는 막대를 모두 자름

→ 현재 쌓여있는 막대의 개수 만큼 추가

쇠 막대기 끝 ⇒ 이전 괄호 “)”, 현재 괄호 “)”

→ 막대가 끝나면서 1개 추가

profile
반박 시 여러분의 말이 맞습니다.

0개의 댓글