반응형
문제
https://www.acmicpc.net/problem/25497
해설
스택을 2개 사용하여 해결하였다. 이게 최선일거라 확신이 들지는 않는다.
def solution(lst):
answer = 0
lr_stack = []
sk_stack = []
for c in lst:
if c.isdigit():
answer = answer + 1
elif c == "L":
lr_stack.append(c)
elif c == "R":
if len(lr_stack) == 0:
break
lr_stack.pop()
answer = answer + 1
elif c == "S":
sk_stack.append(c)
elif c == "K":
if len(sk_stack) == 0:
break
sk_stack.pop()
answer = answer + 1
return answer
num = int(input())
command = input()
print(solution(command))
반응형