사용 언어 - Python3
문제 - 메뉴 리뉴얼
정답
combinations, counter (정답 맞춘 여부 X)
orders에 있는 가능한 모든 조합 찾기
XY = YX 이기 때문에 정렬필요 combination(sorted(order,c))
가능한 모든 조합에서 해당 조합의 갯수를 Counter 모듈을 이용하여 셈
counter = Counter(temp)
조합의 개수가 0이거나, 해당 조합을 주문한 사람이 혼자이면 계산 X
len(counter) != 0 and max(counter.values()) != 1
주문 조합 전부 answer에 추가하기 join
from itertools import combinations
from collections import Counter
def solution(orders, course):
answer = []
for c in course:
temp = []
for order in orders:
combi = combinations(sorted(order), c)
temp += combi
counter = Counter(temp)
if len(counter) != 0 and max(counter.values()) != 1:
answer += [''.join(f) for f in counter if counter[f] == max(counter.values())]
return sorted(answer)
레퍼런스
- 정답 깃허브
'Algorithm > 구현' 카테고리의 다른 글
[프로그래머스 lv 1] 자릿수 더하기 (0) | 2023.06.23 |
---|---|
[프로그래머스 lv 1] 나머지 한 점 (0) | 2023.06.23 |
[프로그래머스 lv 1] 행렬의 덧셈 (0) | 2023.05.31 |
[프로그래머스 lv 1] x만큼 간격이 있는 n개의 숫자 (0) | 2023.05.31 |
[프로그래머스 lv 1] 직사각형 별찍기 (0) | 2023.05.31 |
댓글