Programming/Python

[프로그래머스] 의상

왕밤빵도라에몽 2025. 4. 30. 13:56
728x90

기본 아이디어

  • 콤비네이션?
  • 아무튼 경우의수 다 구하기

코드

from collections import defaultdict

def solution(clothes):
    dic = defaultdict(int)
    for name, category in clothes:
        dic[category] += 1

    total = 1
    for count in dic.values():
        total *= (count + 1)
    return total - 1
  • defaultdict을 쓰면 dict만들때 초기에 if category in dic~이런거 체크 안 해도 된다!
  • 카테고리별 경우의 수 + 1을 해준다 (그 카테코리에서 옷을 안 고르는 경우도 하나의 경우의수로 침)
  • 마지막에 전체에서 아예 아무것도 안 고르는 경우를 제외해준다
728x90