-
[프로그래머스 | 코딩테스트 고득점 Kit] 해시 - 의상알고리즘/문제풀이 2026. 10. 23. 19:49


# 해시 풀이
def solution(colthes): counts = {} for name, category in clothes: counts[category] = counts.get(category, 0) + 1 answer = 1 for count in counts.values(): answer *= count + 1 return answer - 1딕셔너라로 종류별 의상의 수를 센 뒤, 각 종류마다 입지 않는 경우까지 더하여 곱한다
이때, 모든 종류를 입지 않는 경우가 포함되므로 -1을 한다.
※ 딕셔너리 주요 연산
- len(a): 요소의 개수 리턴
- a[key]: 키를 조회하여 값 리턴
- a[key] = value: 키/값 삽입
- key in a: 딕셔너리에 키가 존재하는지 확인
- key not in a: 딕셔너리에 키가 존재하지 않는지 확인
- a.get(key, 0): 키의 값 반환, 없는 키면 기본값 0 반환
- a.keys(): 키들을 조회
- a.values(): 값들을 조회
- a.items(): (키, 값) 쌍들을 조회
- del a[key]: 항목 삭제, 없는 키면 KeyError
- a.pop(key, 0): 삭제한 값 반환, 없는 키면 기본값 0 반환
- a.update({a: 1, b: 2}): 전달한 항목 업데이트
- a.clear(): 딕셔너리 초기화
'알고리즘 > 문제풀이' 카테고리의 다른 글
[프로그래머스 | 코딩테스트 고득점 Kit] 해시 - 전화번호 목록 (0) 2026.10.22 [프로그래머스 | 코딩테스트 고득점 Kit] 해시 - 폰켓몬 (0) 2026.10.22 [프로그래머스 | 코딩테스트 고득점 Kit] 해시 - 완주하지 못한 선수 (0) 2026.10.22