문제 링크

풀이 방법

문자열 파싱을 할 줄 안다면 쉬운 문제이다.

먼저 문제에 주어진 입출력 예시를 보면,

{}로 나뉘어진 집합별로 나눈 다음에 집합 안의 숫자들을

배열에 순서를 지켜가면서 넣어주면 된다.

이 때, 각 집합을 길이 오름차순으로 나열한 다음 중복을 체크해주어야 한다.

코드

1
2
3
4
5
6
7
8
9
10
11
def solution(s):
answer = []
string = s[1:len(s)-1].replace('},', '}-').split("-")
string = sorted([item[1:len(item)-1] for item in string], key=lambda item: len(item))

for item in string:
for digit in item.split(","):
if int(digit) not in answer:
answer.append(int(digit))

return answer