https://programmers.co.kr/learn/courses/30/lessons/72411
KEY POINT: Counter(most_common()), combinations
1. Counter
Counter개념으로 각각의 원소가 몇개씩 있느지를 카운트하는 것이 핵심이었다고 생각한다.
다만 combinations에 접근할 때 join과 sorted 로 미리 잔처리를 해주는 것도 시간 절약에 중요했다
2. combinations
a,b나 b,a 나 똑같으니까 combinations 사용
3. 전체 로직
가장 중요했던 포인트는 course 숫자에 맞게 따로따로 구별해주는 것이었다.
=> 길이가 2인 것들 따로, 3인 것들 따로, 4인 것들 따로 해줘야 비교가 편했다(여기서 푸는데 시간이 오래 걸림)
ex) for i in course 에서 i=2
각각의 메뉴에 접근
2로 combination 돌려놓고
싹 다 정렬
리스트에 추가하고
이 리스트를 counter로 바꾸고
최대 값 + 최대로 된 중복이 된 것까지
append 하고
이제 i=3으로 돌고 반복
즉, 길이별로 나눠주는 것이 포인트였다!!~
'알고리즘' 카테고리의 다른 글
[백준 1010 -다리 놓기][파이썬]-22일차 (0) | 2022.06.16 |
---|---|
[프로그래머스- 타겟 넘버][파이썬]-21일차 (0) | 2022.06.15 |
[백준 14501 -퇴사][파이썬]-20일차 (0) | 2022.06.14 |
[백준 9461 -파도반 수열][파이썬]-20일차 (0) | 2022.06.14 |
[백준 1904 -01타일][파이썬]-20일차 (0) | 2022.06.14 |