https://programmers.co.kr/learn/courses/30/lessons/42578
array는 각 의상의 종류에 따른 의상들을 가지고 있다.
이를 활용해 lst는 종류 별 의상의 개수를 가지게 된다.
ex) lst=[1,2]
특정 종류의 옷을 항상 선택해야 하는 것은 아니므로 선택하지 않는 경우의 수까지 고려하여 각각의 경우에 +1씩해서 서로 곱해주고, 하루에 최소 한 개의 의상은 입으므로 모든 의상을 착용하지 않는 1을 빼준다.
(한 옷의 종류수 + 1(안입는경우의수))*(한 옷의 종류수 + 1(안입는경우의수))-(아무것도 안 입는경우의수)
def solution(clothes):
kinds=[]
for i in clothes:
name,kind=i
kinds.append(kind)
kinds=set(kinds)
array={i:[] for i in kinds}
for i in clothes:
name,kind=i
array[kind].append(name)
lst=[]
for i in array:
lst.append(len(array[i]))
result=1
for i in lst:
result*=(i+1)
return (result-1)