본문 바로가기
Python/알고리즘문제

[프로그래머스][해시] 위장

by 붕어사랑 티스토리 2021. 3. 17.
반응형

programmers.co.kr/learn/courses/30/lessons/42578

 

코딩테스트 연습 - 위장

 

programmers.co.kr

이걸 해시라고 해야하는게 맞는건지... 그냥 순열 문제이다.

 

모자가 3개, 옷이 5개, 신발이 4개 있다 치자

 

모자를 고르는 경우의수는 3+1 = 4 (+1은 선택하지 않음을 의미)

옷을 고르는 경우의수는 5+1 = 6

신발을 고르는 경우의수는 4+1 = 5

 

 

문제에서 아예 안고르는 경우의 수는 빼라 했으므로 마지막에 -1 해주면 된다.

 

4 * 6 * 5 - 1

 

이런식으로 풀면된다.

 

def solution(clothes):
    answer = 0
    mydict = {}
    for i in clothes:
        if i[1] in mydict:
            mydict[i[1]] = mydict[i[1]]+1
        else:
            mydict[i[1]] = 1
    
    answer = 1
    for i in mydict:
        answer*=(mydict[i]+1)
    return answer - 1
반응형

댓글