[알고리즘/프로그래머스] - 위장(python)

유현민·2022년 5월 28일
0

알고리즘

목록 보기
191/253

문제

해시문제이다.
처음에 딕셔너리로 각각 몇개인지 만들고,
headgear는 총 2개 있으니, 스파이에게는 총 3가지의 경우의 수가 있다.

1번을 입는다.
2번을 입는다.
headgear를 아무것도 입지 않는다.

eyewear는 총 1개 있으니, 스파이에게는 총 2가지의 경우의 수가 있다.

1번을 입는다.
eyewear를 입지 않는다.

그렇다면 총 3 x 2 가지의 경우의 수 인 6가지가 존재하고, 이 중 한 가지는 headgear도 입지 않고 eyewear도 입지 않은 경우가 되기 때문에 이 경우를 제외하 5가지가 정답이 되게 된다.
출처: https://coding-grandpa.tistory.com/88 [개발자로 취직하기:티스토리]

def solution(clothes):
    answer = 1
    cloth = {}
    for c in clothes:
        if c[1] not in cloth:
            cloth[c[1]] = 1
        else:
            cloth[c[1]] += 1
    for i in cloth.values():
        answer *= i+1
    return answer - 1
profile
smilegate megaport infra

0개의 댓글