[프로그래머스] 의상
사용 언어: Python3, Java
문제
풀이
나의 풀이
from collections import defaultdict
from itertools import combinations
def solution(clothes):
dic = defaultdict(list)
for item, types in clothes:
dic[types].append(item)
ans = 0
for k in range(1, len(dic) + 1):
for val in combinations(dic.keys(), k):
tmp = 1
for x in val:
tmp *= len(dic[x])
ans += tmp
return ans
- 테스트 케이스: 통과
- 제출 결과: 시간 초과
다른 풀이
from collections import defaultdict
from itertools import combinations
def solution(clothes):
dic = defaultdict(list)
for item, types in clothes:
dic[types].append(item)
ans = 1
for x in dic.values():
ans *= (len(x) + 1)
ans -= 1 # 다 안 입는 경우 제외
return ans
- 테스트 케이스: 통과
- 제출 결과: 성공
💛 개인 공부 기록용 블로그입니다. 👻