코딩테스트/프로그래머스
[프로그래머스] LV2 의상 | 파이썬
애플파ol
2025. 5. 7. 15:02
Solution :
def solution(clothes):
new_dict={}
for i in clothes:
name=i[0]
kind=i[1]
# 기존에 있으면 (추가)
if kind in new_dict.keys():
new_dict[kind].append(name)
# 없다면 (할당)
else:
new_dict[kind]=[name]
# print(new_dict)
answer=1
for k in new_dict.items():
answer*=(len(k[1])+1)
answer-=1
return answer
Skills :
- 딕셔너리에 값 추가
- 새롭게 추가 할 때는 리스트를 사용해야함 (append로 기존의 key 에서는 value를 추가할거기 때문) - 옷 입는 경우의 수
- 뭔가 어릴때 문제풀이 길잡이(?) 이런 문제집에서 풀었던 것 같은데… 옷의 경우의 수를 구할 때 아무것도 안입는 경우도 있기 때문에 +1을 하고, 아무것도 안입은 경우를 마지막에 -1 로 한다.