n = int(input())
word = []
for i in range(n):
word.append(input())
set_word = list(set(word))
sort_word = []
for i in set_word:
sort_word.append((len(i), i))
result = sorted(sort_word)
for len_word, word in result:
print(word)
풀이
정렬 문제는 이제 쉽게 풀 수 있는 것 같아요😆
n 변수로 단어의 개수를 입력받고 word를 리스트로 설정한 뒤 n번만큼 for문으로 단어들을 추가(append)해줍니다.
key point 1
다음으로 중복을 허용하지 않는 set의 특성을 이용해서 중복을 제거해주고(하지만 순서는 뒤죽박죽)
집합 자료형은 { }로 묶이므로 list를 앞에 써주어서 [ ]로 묶어줍니다.
다음으로 뒤죽박죽한 순서를 정렬하기 위해 sort, sorted를 써줄건데
그 전에 set를 진행한 리스트를 for문을 통해 반복해주면서
key point 2
set_word 리스트에 들어있는 단어를 (len(word), word)로 묶어서 저장해줍니다.
댓글