Algorithm
가장 가까운 같은 글자 / 프로그래머스
김예나
2025. 2. 11. 11:52
정답
- 딕셔너리를 이용해서 알파벳과 해당 위치를 기록
- 만약 동일한 알파벳이 이미 딕셔너리에 있다면 현재 위치로 갱신
def solution(s):
ans = []
dic = {}
idx = 0
#문자열 처음부터 순환
for i in s:
#문자열이 딕셔너리에 없는 경우
if i not in dic.keys():
dic[i] = idx
ans.append(-1)
idx += 1
#문자열이 딕셔너리에 있는 경우
else:
ans.append(idx - dic[i])
dic[i] = idx
idx += 1
return ans