코딩테스트/프로그래머스

[프로그래머스] [2019 카카오 개발자 겨울 인턴십] 튜플

박소민 2023. 2. 1. 21:53
튜플
 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

셀수있는 수량의 순서있는 열거 또는 어떤 순서를 따르는 요소들의 모음을 튜플(tuple)이라고 한다.

튜플은 다음과 같은 성질을 가지고 있습니다.

  1. 중복된 원소가 있을 수 있습니다. ex : (2, 3, 1, 2)
  2. 원소에 정해진 순서가 있으며, 원소의 순서가 다르면 서로 다른 튜플입니다. ex : (1, 2, 3) ≠ (1, 3, 2)
  3. 튜플의 원소 개수는 유한합니다.

 

  • 다른 사람 풀이
    •  '},{'을 기준으로 split하면 괄호문자가 모두 사라진다.
    • s는 현재 ','를 포함한 문자열 원소들이다. 👉[ '1', '1,2', '1,2,3' ]
      • -> 문자열이므로 각 값에서 ii=i.split(',') 한걸로도 for문 다시 돌릴 수 있음
    • 출력 순서를 유지하는 방법
      • 길이가 작은 값부터 하나씩 넣으면서 result 안에 없으면 넣는 방식
      • -> 원소의 갯수가 가장 적은것부터 오름차순으로 리스트에 담기위해 
      • s.sort(key = len) 정렬

 

def solution(s):
    answer = []
    s = s[2:-2]
    s = s.split("},{")
    s.sort(key = len)
    for i in s:
        ii = i.split(',')
        for j in ii:
            if int(j) not in answer:
                answer.append(int(j))
    return answer