[Python] 프로그래머스 Lv2 튜플 풀이

지민·2022년 9월 17일
1
post-thumbnail
# PROBLEM - 튜플
# LEVEL - 2
# DATE - 2022-09-01 18:05
# IDEA - 문자열 구현문제, 편견을 버리고 split 할려고 보면 답이 아마 나올걸요
import sys
input = sys.stdin.readline

'''
각 문제들의 logic은 같음, 가독성 차이임
각 문제들의 logic은 같음, 가독성 차이임
각 문제들의 logic은 같음, 가독성 차이임
'''


def solution(tup):  # 순한맛
    answer = []
    tup = tup[2:-2]  # 일단 맨 겉에 괄호 때고
    tup = tup.split('},{')  # },{ 기준으로 split 하면 딱 요소별로 split 잘되구여
    tup = [tuple(map(int, t.split(',')))
           for t in tup]  # , 기준으로 또 split 해서 int로 형변환 해주고
    tup.sort(key=len) # 배열의 길이 기준으로 정렬하면 튜플에 요소를 하나씩 추가하는 순서가 딱 나옴
    for t in tup:
        # 어짜피 이렇게 조건식 걸면 하나밖에 안나옴, INT TYPE으로 APPEND 하기위해서 [0]
        answer.append([x for x in t if x not in answer][0])
    return answer


def solution(tup):  # 매운맛, 설명은 이하생략
    answer = []
    tup = sorted([tuple(map(int, t.split(',')))
                 for t in tup[2:-2].split('},{')], key=len)
    for t in tup:
        answer.append([x for x in t if x not in answer][0])
    return answer


print(solution("{{2},{2,1},{2,1,3},{2,1,3,4}}"))
profile
남들 개발 공부할 때 일기 쓰는 사람

0개의 댓글