from collections import Counter
def solution(clothes):
#type만 있는 list 생성 후, Counter로 type의 개수를 담은 dictionary 생성
clothes_hash = Counter([type for clothe, type in clothes])
#만약 머리에 쓸 수 있는 게 2개라고 치자. 그런데 안 쓰는 경우 포함해서 +1 을 해주면 3개이다.
#그러므로 만약 머리 : 2, 상의 : 3, 하의 : 2개라고 치면 3*4*3이 되는 것이다.
#하지만 그렇게 된다면 안 입는 경우가 포함 되어 있기 때문에 (안 입는 경우, 안입는 경우, 안 입는 경우)
#-1을 마지막에 꼭 해줘야 한다.
total = 1
for clothe_type, clothe_count in clothes_hash.items():
total *= clothe_count + 1
return total - 1
고등학교에서 배운 확률과 통계 수준의 수학이다.
추억이다..
'조열심 카테고리 > 알고리즘' 카테고리의 다른 글
| [프로그래머스] 행렬의 곱 (0) | 2022.09.29 |
|---|---|
| [프로그래머스] 모음사전 (0) | 2022.09.27 |
| [프로그래머스] 피로도 (0) | 2022.09.27 |
| [프로그래머스] 주식가격 (0) | 2022.09.26 |
| [프로그래머스] 모의고사 (0) | 2022.09.26 |