https://www.acmicpc.net/problem/1181
1181행: 단어 정렬
단어 수 N은 첫 번째 줄에 제공됩니다.
(1 ≤ N ≤ 20,000) 두 번째 줄부터 N 줄까지 알파벳 소문자로 구성된 단어를 한 줄에 한 번씩 지정한다.
지정된 문자열의 길이는 50을 초과할 수 없습니다.
www.acmicpc.net
내 솔루션
import sys
n = int(input())
re_list =()
for i in range(n):
re_list.append(sys.stdin.readline().rstrip())
result = set(re_list)
a_list =()
a_list = list(result) #set을 다시 list로 변환
a_list.sort() #list를 알파벳 순서로 정렬
a_list.sort(key=len) #문자열 길이로 정렬
for i in a_list:
print(i)
정리하다
범위(n)의 i에 대해:
인쇄(a_list(i))
그렇게하면 런타임 오류가 발생합니다 !
!
조심하세요
- 입력을 목록으로 가져와서 문장에 넣어 중복을 제거하세요!
- 설정 -> 목록으로 변환 => 1. sort()를 사용하여 알파벳순으로 정렬 2. sort(key = len) 문자열 길이로 정렬