코딩코딩코딩

백준(BAEKJOON) 1181 단어정렬 - 파이썬(python) 본문

파이썬/Algorithms

백준(BAEKJOON) 1181 단어정렬 - 파이썬(python)

hanshow113 2021. 4. 12. 23:31

 

처음에는 딕셔너리를 사용해서 {"단어":단어길이} 식으로 key, value 로 접근해서 풀려고 했는데 한 조건이 같을 때 다음 조건으로 정렬하는 부분을 구현하는 데 어려움이 있어서 튜플을 이용해서 풀었다.

 

import sys

n = int(sys.stdin.readline())

# 문자를 입력받고 중복된 문자를 제거 한 후 리스트에 삽입
sentence = list(set([sys.stdin.readline().strip() for i in range(n)]))

words = [(len(word), word) for word in sentence]    # 튜플이 원소인 리스트 생성
words.sort(key=lambda word: (word[0], word[1]))    # 단어 길이, 단어 순으로 오름차순 정렬

for word in words:
    print(word[1])
Comments