https://programmers.co.kr/learn/courses/30/lessons/42578
2차원 배열 clothes가 주어질 때 서로 다른 옷의 조합의 수를 반환하면 되는 문제입니다.
제한사항
입출력 예
clothes | return |
---|---|
[["yellowhat", "headgear"], ["bluesunglasses", "eyewear"], ["green_turban", "headgear"]] | 5 |
[["crowmask", "face"], ["bluesunglasses", "face"], ["smoky_makeup", "face"]] | 3 |
from collections import defaultdict
def solution(clothes):
answer = 0
dic = defaultdict(list)
for cloth in clothes:
dic[cloth[1]].append(cloth[0])
tmp = 1
for key in dic.keys():
tmp *= (len(dic[key])+1)
answer = tmp - 1
return answer