[Python] 카카오(2) 튜플
Updated: Categories: Programmershttps://programmers.co.kr/learn/courses/30/lessons/64065
아이디어
- 주어진 집합에서 원소의 등장횟수가 많은 순으로 튜플의 순서가 결정된다.
- 따라서 집합에서 원소당 등장횟수 내림차순으로 리스트를 구현한다.
- 일단 입력값이 문자열이므로 문자열을 리스트로 변환한다.
- 불필요한 요소들
{ } ,
등을 모두 제거하고 원소당 등장횟수 딕셔너리를 만들고 등장횟수의 내림차순으로 정렬한다.
알게 된 함수/방법
replace(삭제값, 바꿀값)
: 문자열에서 해당 문자를 바꿔주는 함수Conter(리스트)
: 입력된 리스트의 원소들의 등장횟수를 구해서 원소별 등장횟수 딕셔너리를 반환해주는 함수sorted(list, key, reverse)
: 세가지 인자값을 가지고 있으며 key에 주어진 기준으로 리스트를 정렬한다.lambda x: x[_]
: 2차원 리스트를 정렬할때 키값에 넣으면 입력열을 기준으로 정렬한다.
정답 코드
from collections import Counter
def solution(s):
s = s.replace('{', '')
s = s.replace('}', '')
s_list = s.split(',')
s_list = [int (i) for i in s_list]
cnt = Counter(s_list)
s_cnt = sorted(cnt.items(), key=(lambda x: x[1]), reverse=True)
answer = []
for i in s_cnt:
answer.append(i[0])
return answer