보물창고 블로그

프로그래머스 위장 풀이 With Python 본문

알고리즘 풀이/프로그래머스

프로그래머스 위장 풀이 With Python

홋 메 2022. 2. 12. 21:03
728x90

문제 링크: https://programmers.co.kr/learn/courses/30/lessons/42578

 

코딩테스트 연습 - 위장

 

programmers.co.kr

경우의 수 문제입니다. 각 부위별로 개수를 구해서 (개수+1)값을 전부 곱한뒤 1을 빼면 답입니다.

1을 빼는 이유는 옷을 하나도 걸치지 않을 경우를 빼야하기 때문입니다. 소스코드는 아래와 같습니다.

def solution(clothes):
    if len(clothes) == 0:
        return 0
    from collections import defaultdict
    part = defaultdict(int)
    for c in clothes:
        part[c[1]] += 1
    answer = 1
    for p in part:
        answer *= part[p] + 1
    return answer - 1

소스코드에 대한 질문이 있으시면 댓글 남겨주시면 답변드리겠습니다. :-)

Comments