190204 백준 알고리즘 문제풀기

|

[1181] 단어 정렬

문제

  • 알파벳 소문자로 이루어진 N개의 단어가 들어오면 아래와 같은 조건에 따라 정렬하는 프로그램을 작성하시오.
    • 길이가 짧은 것부터
    • 길이가 같으면 사전 순으로
    • 중복되는 단어는 제거
  • list 내의 중복 단어는 list_name = list(set(list_name))을 이용하여 제거한다.
  • list 내의 단어를 알파벳순으로 정렬하기 위해서는 list_name.sort() 메서드를 사용한다.
  • list 내의 단어를 길이 순으로 정렬하기 위해서는 list_name.sort(key=len) 메서드를 사용한다.
  • list_name.sort() 메서드는 return 값이 0이며 자기 자신을 정렬하게 된다.

정답

inputs = []
for _ in range(int(input())):
    inputs.append(str(input()))
inputs = list(set(inputs))
inputs.sort()
inputs.sort(key=len)
for j in inputs:
    print(j)