알고리즘 문제/PROGRAMMERS
[2018 kakao blind] 다트게임
이융희
2021. 8. 1. 16:34
728x90
규칙이 귀찮지만 어렵진 않음
def solution(dartResult):
i, idx, length = 0, 0, len(dartResult)
score = []
while idx < length:
temp_score = 0
if dartResult[idx+1] == "0" and dartResult[idx] =="1":
temp_score = 10
idx += 1
else:
temp_score = int(dartResult[idx])
if dartResult[idx+1] == "S":
temp_score = int(temp_score) ** 1
if dartResult[idx+1] == "D":
temp_score = int(temp_score) ** 2
if dartResult[idx+1] == "T":
temp_score = int(temp_score) ** 3
score.append(temp_score)
if idx + 2 >= length:
break
if dartResult[idx+2] in ["*", "#"]:
if dartResult[idx+2] == "*":
score[i] = score[i] * 2
if i != 0:
score[i-1] = score[i-1] * 2
else:
score[i] = score[i] * -1
idx += 1
idx += 2
i += 1
return sum(score)