반응형
def solution(dartResult):
answer = []
dartResult = dartResult.replace('10','X')
point = ['10' if i == 'X' else i for i in dartResult]
# print(point)
SDT = ["S","D","T"]
for i in point:
if i in SDT:
answer[-1] = answer[-1]**(SDT.index(i)+1)
elif i == "*":
answer[-1] *= 2
if len(answer) > 1 :
answer[-2] *= 2
elif i == "#":
answer[-1] *= -1
else:
answer.append(int(i))
print(answer)
return sum(answer)
못풀었다.. 쉣..
다른사람의 코드를 찾아보았고 꽤 많은 사람들이
re 라는 라이브러리를 쓰던데 내일은 그걸 가지고 풀어봐야겠다.
'10'이라는 두자리 숫자의 문자열을 어떻게 다룰지 고민하다가 15분이 지나길래 풀이를 봤는데..
문자열의 replace를 보고 눈이 번쩍,, 정말 기발한 생각을 해내는 사람들이 많다.
그 이후로는 풀이를 한번 봐서 그런지 막힘없이 풀 수 있었다.
반응형
'코딩테스트 연습' 카테고리의 다른 글
비밀지도_파이썬 (0) | 2020.12.24 |
---|---|
x만큼 간격이 있는 n개의 숫자_파이썬 (0) | 2020.12.24 |
프로그래머스_행렬의덧셈_파이썬 (0) | 2020.12.23 |
프로그래머스_핸드폰 번호 가리기_파이썬 (0) | 2020.12.23 |
프로그래머스_하샤드수_파이썬 (0) | 2020.12.22 |
댓글