나의 풀이)
def solution(s):
answer = []
visited = {}
for i,j in enumerate(s):
if j in visited:
diff = i - visited[j] + 1
answer.append(diff)
visited[j] = i+1
else:
answer.append(-1)
visited[j] = i+1
return answer
enumerate()를 사용해서 값과 순서를 이용, visited 딕셔너리에 값과 마지막으로 나왔던 인덱스를 저장하여 해결하였다.
처음 나오면 -1, 또 나오면 마지막 위치를 가져와서 사용
'TIL > Python' 카테고리의 다른 글
프로그래머스| 콜라 문제(Python3) (0) | 2024.08.02 |
---|---|
프로그래머스| 푸드파이트 대회(Python3) (0) | 2024.08.01 |
TIL (7/15) <replace(), 문자열 기준대로 정렬하기, 최소 직사각형> (0) | 2024.07.15 |
TIL (7/12) <zip(), enumerate()> (0) | 2024.07.12 |
TIL (7/11) <class, 불리언 인덱싱, 데코레이션, upper(), lower()> (0) | 2024.07.11 |