# 간단하게 설명하자면 고등수학 경우의 수 입니다.
# 로직 자체는 매우 간단해요
# 안선택하는 경우 고려해서 + 1 로 곱하고,
# 아무것도 선택하지 않는 경우는 없으므로 -1 해주면 됩니다.
# 이런 문제는 노트에 필기하면서 풀어봐도 좋을 듯 합니다~
import collections
def comb(values):
total = 1
for value in values:
total *= (value + 1)
return total - 1
def solution(clothes):
clothesDict = collections.defaultdict(int)
for _, kind in clothes:
clothesDict[kind] += 1
return comb(clothesDict.values())