프로그래머스 lv1 1차-다트게임
1. 개요
2. 완주하지못한선수 풀이
import re
def solution(dartResult):
darts = re.findall("(\d+)([SDT])([\*#]*)", dartResult)
ADJUSTER = {"S":1, "D":2, "T":3, "*":2, "#":-1, "":1}
answer = []
# 정규식을 통해 각각의 다트의 점수, 보너스, 옵션을 모두 알아낼수 있다.
for score, bonus, op in darts:
score = int(score)**ADJUSTER[bonus]*ADJUSTER[op]
if answer and op=="*":
answer[-1] *= ADJUSTER[op]
answer.append(score)
return sum(answer)
Leave a comment