https://programmers.co.kr/learn/courses/30/lessons/17684
주어진 조건대로 구현하면 된다.
from collections import defaultdict
def solution(msg):
alphabet ='ABCDEFGHIJKLMNOPQRSTUVWXYZ'
answer = []
dict = defaultdict(int)
for i,alpha in enumerate(alphabet):
dict[alpha] = i+1
start, end, value = 0,2,27
def search(msg,start,end,dict,answer,value):
key = msg[start:end]
word = msg[start:end-1]
if dict[key] == 0: # 키가 없을 때
dict[key] = value
value += 1
answer.append(dict[word])
elif end>len(msg): # 해당 키가 있을 때
answer.append(dict[key])
else:
return search(msg,start,end+1,dict,answer,value)
return end-1, end+1 , answer , value
while start < len(msg):
start , end, answer, value = search(msg,start,end,dict,answer,value)
return answer
'Programming > Programmers' 카테고리의 다른 글
[프로그래머스] n진수 게임 (Python) (0) | 2021.11.07 |
---|---|
[프로그래머스] 파일명 정렬 (Python) (0) | 2021.11.07 |
[프로그래머스] 가장 큰 정사각형 찾기 (Python) (0) | 2021.11.06 |
[프로그래머스] 방금 그곡 (Python) (0) | 2021.11.04 |
[프로그래머스] 방문 길이 (Python) (0) | 2021.11.04 |
댓글