난이도
Level2
풀이
1. 파이썬의 eval()함수 + 리스트를 사용한 풀이
def solution(s):
answer = []
s=s.replace('{','[')
s=s.replace('}',']')
s=eval(s)
s.sort(key=lambda x:len(x))
for num in s:
for number in num:
if number not in answer:
answer.append(number)
return answer
2. 파이썬의 eval()함수 + set을 사용한 풀이
def solution(s):
answer = []
s=s.replace('{','[')
s=s.replace('}',']')
s=eval(s)
s.sort(key=lambda x:len(x))
for num in s:
for number in num:
if number not in answer:
answer.append(number)
return answer
3. eval() 함수 사용 안한 풀이
def solution(s):
answer = []
s=s[2:-2]
s=sorted(s.split("},{"),key=lambda x:len(x))
for case in s:
case=case.split(",")
for str in case:
if int(str) not in answer:
answer.append(int(str))
return answer
4. Counter 함수와 정규표현식을 이용한 풀이
import re
from collections import Counter
def solution(s):
answer = []
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)]))
'알고리즘' 카테고리의 다른 글
백준 13717번(포켓몬 GO) (0) | 2023.04.11 |
---|---|
프로그래머스 뒤에 있는 큰 수 찾기 (0) | 2023.04.11 |
백준 스타트와 링크(14889번) (0) | 2023.04.11 |
프로그래머스 귤 고르기 (자바,파이썬 풀이) (0) | 2023.04.08 |
BOJ 아기상어 (16236번) (자바 / 파이썬 풀이) (0) | 2023.04.06 |