-
[Python] 프로그래머스 / 2020 카카오 인턴십 / 보석 쇼핑코딩테스트 2024. 10. 3. 21:55
정답 코드
def solution(gems): gems_unique_count = len(set(gems)) gems_dict = dict() s, e = 0, 0 gems_dict[gems[0]] = 1 answer = [0, len(gems) - 1] while e < len(gems): if len(gems_dict) == gems_unique_count: if e - s < answer[1] - answer[0]: answer = [s, e] gems_dict[gems[s]] -= 1 if gems_dict[gems[s]] == 0: del gems_dict[gems[s]] s += 1 else: e += 1 if e < len(gems): gems_dict[gems[e]] = gems_dict.get(gems[e], 0) + 1 return [answer[0] + 1, answer[1] + 1]
'코딩테스트' 카테고리의 다른 글
[Python] 프로그래머스 / 2021 카카오 채용연계형 인턴십 / 표 편집 (0) 2024.10.04 [Python] 프로그래머스 / 2020 KAKAO BLIND RECRUITMENT / 블록 이동하기 (0) 2024.10.04 [Python] 프로그래머스 / 디스크 컨트롤러 (0) 2024.10.03 [Python] 프로그래머스 / Summer/Winter Coding(~2018) / 지형 편집 (1) 2024.10.03 [Python] 프로그래머스 / 월간 코드 챌린지 시즌1 / 스타 수열 (0) 2024.10.02