[프로그래머스/Python] 튜플

류성훈·2022년 7월 4일
1

코딩테스트

목록 보기
28/29

https://programmers.co.kr/learn/courses/30/lessons/64065?language=python3

문자열로 집합이 주어지므로, 문자열을 처리해주어야 한다.
어떻게 처리해주어야 좋을지 생각을 많이했다.

def solution(s):
    answer = []
    flag = False
    
    s = s[2:-2]
    
    arr = []
    
    for i in s.split('},{'):
        arr.append(list(map(int, i.split(','))))
    
    arr.sort(key = lambda x: len(x))
    
    for i in arr:
        for j in i:
            if j not in answer:
                answer.append(j)
    return answer

바깥의 괄호를 처리하고나면, '},{' 를 기준으로 원소들이 나뉘어 지므로 split 해주고, 결과값을 list형태로 append 한다.

얻어진 list를 갯수 오름차순으로 정렬해주고, for문을 돌려 answer에 추가시켜주면 끝!

profile
(전)Backend Developer / (현)Data Engineer

0개의 댓글