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


1181 단어 정렬 문제 바로가기


접근방식

  • 입력된 문자를 길이로, 길이가 같다면 사전 순으로 정렬해야하고 출력 시 중복 문자열이 없도록 한다.
  • 출력할 때 중복 문자열을 제어하는 방법도 있겠지만 나는 애초에 입력 시 중복 문자열을 체크해 리스트에 넣지 않도록 했다.
  • 정렬 조건은 .sort()함수의 key를 통하여 제어했다.

파이썬 코드

import sys

n = int(sys.stdin.readline())
words = []
# 중복 문자열을 거른다.
for _ in range(n):
    word = sys.stdin.readline().strip()
    if word not in words:
        words.append(word)
        
words.sort(key=lambda w:(len(w),w))
print('\n'.join(words))





© 2020.09. by 다로

Powered by theorydb