알고리즘/프로그래머스
2018 KAKAO BLIND RECRUITMENT - 압축, 파이썬
그레고리력
2021. 3. 9. 22:00
1. 문제
2. 풀이
- 문제는 쉬운편인데 좀 파이썬답지않게 풀었다.
- 최근 카카오 기출 경향과는 다른 문제
3. 코드
def sol(msg, arr, dic):
if not msg :
return
i = 0
while msg[:i+1] in dic and i < len(msg):
i += 1
arr.append(dic[msg[:i]])
dic[msg[:i+1]] = max(dic.values()) + 1
sol(msg[i:], arr, dic)
def solution(msg):
dic = {}
for i in range(26) :
dic[chr(ord('A')+i)] = i+1
answer = []
sol(msg, answer, dic)
return answer