728x90
320x100
import collections
def solution(gems):
answer = [0, 0]
sH = collections.defaultdict(int)
# 보석의 종류 (중복제거를 하면 보석의 종류가 나오니까!)
k = len(set(gems))
lt = 0
maxL = 10000000
for rt in range(len(gems)):
sH[gems[rt]] += 1
while (len(sH) == k ):
if rt - lt + 1 < maxL:
maxL = rt - lt + 1
answer = [lt+1, rt+1]
sH[gems[lt]] -= 1
if sH[gems[lt]] == 0:
del sH[gems[lt]]
lt += 1
return answer
728x90
320x100
'💻 하나씩 차곡차곡 > 프로그래머스 (Python)' 카테고리의 다른 글
[Lv.2] 피로도 (0) | 2023.04.28 |
---|---|
[Lv.3] 단속 카메라 (0) | 2023.04.27 |
[LV.1] 주차 요금 계산 (0) | 2023.03.23 |
[LV.1] 신고 결과 받기 (0) | 2023.03.22 |
코딩테스트 입문 Day25 - 종이 자르기, 문자열 밀기, 다음에 올 숫자, 연속된 수의 합 (0) | 2023.03.21 |