취준생의 코딩테스트 연습기

[프로그래머스] 위장 / 파이썬(python) 본문

코딩테스트/프로그래머스

[프로그래머스] 위장 / 파이썬(python)

Jiwon_C 2021. 5. 28. 16:23

# 문제 링크

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

 

코딩테스트 연습 - 위장

 

programmers.co.kr

# Soultion

해시를 이용하여 문제 해결.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
def solution(clothes):
    answer = 0
    cloths = {}
    
    for name, kind in clothes:
        if kind in cloths:
            cloths[kind]+=1
        else:
            cloths[kind] = 1
    
    answer = 1
    for key, value in cloths.items():
        answer *= (value+1)
        
    return answer-1 #모두 안입는 경우 빼기
 
cs

 

5. clothes에 담겨있는 옷들을 한개씩 뽑아와서 종류별로 카운팅을 해준다.

6. 이미들어와있는 종류이면 저장된값에서 1을 저장해준다.

8. 처음들어오는 종류이면 1로 저장 

12. 아이템들의 개수를 한개씩 뽑아오기

13. 각 (아이템의 개수+1)을 해준다. +1을 해주는이유는 해당아이템을 착용하지 않는경우도 포함

15. 구한 정답에 -1을 해준다. 모든 종류를 안입는 경우는 없으므로 -1을 해주어야한다.

Comments