아무나개발하자

가장 가까운 같은 글자 본문

코딩테스트

가장 가까운 같은 글자

개발천재나천재 2023. 1. 13. 23:47

문제

https://school.programmers.co.kr/learn/courses/30/lessons/142086

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

 

 

 

해설

"""
문제 해결 방법
1. dic를 하나 생성 -> key : 해당 단어 value : 위치
2. s를 돌면서 dic에 없으면 answer -1 and dic에 추가, dic에 있으면 answer (현재 위치 - 해당 단어위치) and dic에 추가
"""
def solution(s):
    answer = []
    s_list = list(map(str, s))
    wordAndLocation = {}
    
    for i in range(len(s_list)):
        if (s_list[i] not in wordAndLocation):
            answer.append(-1)
            wordAndLocation[s_list[i]] = i
        else:
            answer.append(abs(i - wordAndLocation[s_list[i]]))
            wordAndLocation[s_list[i]] = i
            
    return answer

'코딩테스트' 카테고리의 다른 글

[1차] 캐시  (0) 2023.01.27
문자열 내 마음대로 정렬하기  (0) 2023.01.26
[1차] 비밀지도  (0) 2023.01.11
이상한 문자 만들기  (0) 2023.01.10
시저 암호  (0) 2023.01.09