[문제]

https://programmers.co.kr/learn/courses/30/lessons/42578

 

코딩테스트 연습 - 위장

 

programmers.co.kr

 

[풀이]

  1. 각 의상별 가짓수 계산
  2. 부위별 옷에서 아무것도 안입는 경우가 있을 수 있어 각 가짓수에 1을 더해 곱한다.
  3. 하루에 최소 한 개의 옷은 입기 때문에 모두 안입은 경우인 1을 뺀다.

 

[코드]

def solution(clothes):
    closet = {}
    for cloth in clothes:
        if cloth[1] in closet:
            closet[cloth[1]] += 1
        else:
            closet[cloth[1]] = 1
            
    answer = 1
    for i in closet.values():
        answer *= (i + 1)
    return answer - 1