새소식

반응형
Algotithms

[프로그래머스] 의상

  • -
728x90
반응형

문제

  • M종류의 옷이 총 N개 있을 때, 서로 다른 옷의 조합 수는?
    • 1 <= N <= 30
    • 각 종류별로 최대 1가지 의상을 착용할 수 있음
    • 하루 최소 한 개 의상을 입어야 함

 

풀이

  • 각 종류별로 (옷의 개수+1) 가지 수를 갖는다.
  • 모두 곱한 후, 아무 것도 입지 않는 경우의 수만 제외 해준다.

 

def solution(clothes):
    answer = 1							# 정답 변수
    types = [y for x, y in clothes]		# 의상 종류만 담기
    counts = [types.count(type) for type in set(types)]	# 종류별 개수 세기
    # 각 의상 종류별 (의상 개수+1) 곱하기
    for c in counts:
        answer *= c+1
    return answer -1	# 모두 입지 않는 경우의 수 제외

 

References

반응형
Contents

포스팅 주소를 복사했습니다

이 글이 도움이 되었다면 공감 부탁드립니다.