Home [TIL] 99클럽 코테 스터디 6기 7일차 TIL - [스택] 쇠 막대기
Post
Cancel

[TIL] 99클럽 코테 스터디 6기 7일차 TIL - [스택] 쇠 막대기

오늘의 문제

10799. 쇠 막대기(실버2)

키워드

자료구조, 스택

나의 풀이

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
brackets = input()
stack = []
count = 0

for i in range(len(brackets)) :
    if brackets[i] == '(' :
        stack.append(brackets[i])
    
    else :
        stack.pop()
        if brackets[i-1] == '(' : ## 직전 값이 여는 괄호(=레이저)
            count += len(stack) ## 막대기 조각 개수
        else : ## 직전 값이 닫는 괄호(=막대기 끝)
            count += 1

print(count)

# [수정 전 오답]
brackets = list(input())
stack = []
count = 0

for s in brackets :
    if len(stack) == 0 or s == '(' :
        stack.append(s)
        
    elif stack[-1] == '(' and s == ')' : ## 레이저: 직전 값이 여는 괄호, 현재 값이 닫는 괄호일 때
        stack.pop() ## 여는 괄호 1개 제거
        count += stack.count('(')
    
    elif s == ')' : # 막대기 오른쪽 끝
        stack.pop()
        count += 1

print(count)

회고

This post is licensed under CC BY 4.0 by the author.

[TIL] 99클럽 코테 스터디 6기 6일차 TIL - [BFS/DFS] 섬의 개수

[TIL] 99클럽 코테 스터디 6기 8일차 TIL - [정규표현식] 한국이 그리울 땐 서버에 접속하지

Comments powered by Disqus.

Comments powered by Disqus.