프로그래머스 Lv.2 의상
2024. 7. 10. 10:01ㆍ알고리즘문제 풀이/프로그래머스
문제 링크
https://school.programmers.co.kr/learn/courses/30/lessons/42578
풀이
dictionary 기능을 이용한다.
clothDict는 key값은 옷의 종류이고 value값은 옷의 종류 별 해당하는 옷의 수를 나타내는 딕셔너리이다.
clothDict = {옷의 종류1: 갯수1, 옷의 종류 2: 갯수2, ... }
총 옷을 입는 경우의 수 = (갯수1 + 1) * (갯수2 + 1) * ... *(갯수n + 1) - 1
각각의 갯수의 1을 더하는 이유는 해당 옷의 종류를 안 입는 경우까지 합산한 것이다.
맨 마지막에 1을 뺀 이유는 모든 옷을 입지 않은 경우는 제외한 것이다.
전체 코드
def solution(clothes):
answer = 1
clothDict = {}
for name, kind in clothes:
if kind in clothDict:
clothDict[kind] += 1
else:
clothDict[kind] = 1
countList = list(clothDict.values())
for count in countList:
answer *= count + 1
answer -= 1
return answer'알고리즘문제 풀이 > 프로그래머스' 카테고리의 다른 글
| 프로그래머스 Lv.3 디스크 컨트롤러 파이썬(Python) (0) | 2024.07.10 |
|---|---|
| 프로그래머스 Lv.2 전화번호 목록 (1) | 2024.07.10 |
| 프로그래머스 Lv.2 게임 맵 최단거리 (0) | 2024.07.09 |
| 프로그래머스 Lv2. 타겟 넘버 (0) | 2024.07.09 |
| 프로그래머스 Lv.2 다리를 지나는 트럭 (0) | 2024.07.09 |