본문 바로가기

코딩테스트/Python

[프로그래머스] 튜플 - 작성중

내 코드

def solution(s):
    answer = {}

    s = s.replace("{","").replace("}","")
    s = s.split(",")
    s = list(map(int,s))
    for i in s:
        if i in answer:
            answer[i]+=1
        else:
            answer[i]=1

    answer = answer.items()
    
    return [i[0] for i in sorted(answer,key = lambda x:-x[1])]

s에서 {}를 없애준다음 ,를 따라서 분리해줬다. 문자를 숫자로 바꾸고 딕셔너리를 만들어줬다.

딕셔너리를 value값으로 내림차순해주고 그에따른 key를 구함!

ㅠㅠ 딕셔너리 내림차순 까먹어서 인터넷 찾아봄 ㅠㅠ

d.items()를 하면 튜플형태로 만들고 sort하면됨!

 

다른사람 코드

def solution(s):

    s = Counter(re.findall('\d+', s))
    return list(map(int, [k for k, v in sorted(s.items(), key=lambda x: x[1], reverse=True)]))

import re
from collections import Counter

하.. 정규표현식.,, 진짜 이번엔 공부하는거 미루면 안되겠다..ㅋㅋㅋㅋㅋ 낼해야지.. 후..