알고리즘
[백준] 1181 단어 정렬 Python
아람2
2024. 9. 13. 16:31
반응형
1. 문제
N개의 단어를 아래와 같이 정렬하는 프로그램을 작성하시오
1. 길이가 짧은 것부터
2. 길이가 같으면 사전 순으로
단, 중복된 단어는 하나만 남기고 제거한다
단어의 개수 1 <= N <= 20,000
2. 접근 방식
Python 내장 함수 sort() or sorted() 사용
3. 전체 코드
# 1. 길이가 짧은 것부터
# 2. 길이가 작으면 사전 순으로
# 알파벳 소문자로 이루어진 N개의 단어 정렬 (1 <= N <= 20,000)
# 단어의 개수 N
# 단어 리스트 data_list
# N 입력 받기
N = int(input())
data_list = []
# 데이터 한 줄씩 입력 받기
for i in range(N):
data_list.append(input().strip())
# 중복 제거
data_list = list(set(data_list))
# 정렬
data_list.sort()
# 길이대로 정렬
data_list.sort(key=lambda x: len(x))
# 한 줄씩 출력
for word in data_list:
print(word)
반응형