문제풀이/프로그래머스
[프로그래머스][Lv1] - [1차] 다트 게임 (Python)
얄루몬
2021. 10. 18. 16:11
def solution(dartResult):
stack = []
dartResult = dartResult.replace("10", "A")
bonus = {'S': 1, 'D': 2, 'T': 3}
for i in dartResult:
if i.isdigit() or i=='A':
stack.append(10 if i == 'A' else int(i))
print(stack)
elif i in ('S', 'D', 'T'):
num = stack.pop()
stack.append(num ** bonus[i])
elif i == '#':
stack[-1] *= -1
elif i == '*':
num = stack.pop()
if len(stack):
stack[-1] *= 2
stack.append(2 * num)
return sum(stack)