본문 바로가기

프로그래밍_백준/Python

Python) 1181번 단어 정렬 (sort함수)

728x90
반응형

 

1. 단어을 사전 순으로 정렬한 다음에

2. 길이 순으로 정렬하면

=> 길이 순으로 정렬한 후 사전 순으로 정리한 것 처럼 출력할 수 있습니다.

또한, set 함수를 이용해서 중복된 값을 합쳤고, sort에서 key를 이용하여 길이 순으로 정렬하였습니다.

import sys
input = sys.stdin.readline  # 입력 속도를 높여주는 sys.stdin.readline을 input으로 사용합니다.

n = int(input().strip())  # 입력받을 문자열의 개수를 저장합니다.
a = []  # 문자열을 저장할 리스트를 초기화합니다.

# 문자열을 입력받아 리스트에 추가합니다.
for i in range(n):
    a.append(input().strip())

# 중복 제거
a = set(a)  # 중복을 제거하기 위해 리스트를 집합으로 변환합니다.
a = list(a)  # 중복이 제거된 집합을 다시 리스트로 변환합니다.

# 사전식 순서로 정렬
a.sort()

# 문자열 길이로 정렬
a.sort(key=len)  # 문자열 길이를 기준으로 정렬합니다.

# 정렬된 문자열 출력
for i in a:
    print(i)  # 각 정렬된 문자열을 출력합니다.
728x90
반응형