문제 링크: https://school.programmers.co.kr/learn/courses/30/lessons/64065
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
✍🏻코드
from collections import deque
def solution(s):
s = s[2:-2]
s = s.split('},{')
answer = []
s.sort(key=lambda x:len(x))
for i in s:
arr = i.split(',')
for j in arr:
if int(j) not in answer:
answer.append(int(j))
return answer
💡풀이
- 해당 입력은 '{' , '}' , ',' 이 모두 문자열로 같이 들어오기 때문에 문자열을 작은 단위로 쪼개나가야 합니다.
- 우선 공통적으로 맨 앞, 맨 뒤의 '{{','}}'을 슬라이싱으로 없애줍니다.
- 남은 부분을 숫자로 구분하기 위해 '},{'로 다시 나눠줍니다.
- 올바른 순서대로 튜플을 구하기 위해 원소별 길이대로 오름차순으로 정렬해줍니다.
- 또 ',' 로 split()해서, 마지막엔 answer에 없을경우 값을 넣어주면 됩니다.
'👨🏻💻알고리즘 > 프로그래머스' 카테고리의 다른 글
[프로그래머스] Lv2. 타겟 넘버 (0) | 2023.01.22 |
---|---|
[프로그래머스] Lv2. 귤 고르기 (0) | 2023.01.22 |
[프로그래머스] Lv2. 뉴스 클러스터링 (0) | 2023.01.22 |
[프로그래머스] Lv2. 프린터 (0) | 2023.01.22 |
[프로그래머스] Lv2. n^2 배열 자르기 (0) | 2023.01.22 |