[Baekjoon Online Judge] 백준 1181번 단어 정렬
(Python)
(글쓴날 : 2020.04.02)
* Baekjoon Online Judge, 백준 1181번 문제 Python 언어 풀이입니다.
* 소스 코드의 저작권은 글쓴이에게 있습니다.
백준 1181번 단어 정렬
1) 문제
문제 링크 : https://www.acmicpc.net/problem/1181
2) 풀이 과정
알파벳 소문자로 이루어진 N개의 단어가 주어지고, 해당 단어들을 길이가 짧은 순, 길이가 같다면 사전 순으로 정렬하여 출력하는 문제입니다.
단, 같은 단어가 여러 개 있을 경우 한 번만 출력해야 합니다.
저의 경우, Python으로 문제를 해결했으며, 단어들을 리스트에 저장해 set()으로 형변환하여 리스트 내의 중복 값을 제거했습니다.
그 후, sorted() 함수를 사용해 정렬을 했고, lambda 표현식을 이용해 정렬의 첫째 기준으로 단어의 길이, 둘째 기준으로 단어의 각 알파벳 사전 순을 지정하여 문제를 해결했습니다.
3) 코드
* Python 코드
1
2
3
4
5
|
import sys
input = sys.stdin.readline
words = set([input().rstrip() for _ in range(int(input()))])
print(*sorted(words, key=lambda words: (len(words), words[:])), sep="\n")
|
'Deprecated' 카테고리의 다른 글
[Baekjoon Online Judge] 백준 15650번 N과 M (2)(Python) (0) | 2020.04.02 |
---|---|
[Baekjoon Online Judge] 백준 10814번 나이순 정렬(Python) (0) | 2020.04.02 |
[Baekjoon Online Judge] 백준 11651번 좌표 정렬하기 2(Python) (0) | 2020.04.02 |
[Baekjoon Online Judge] 백준 11650번 좌표 정렬하기(Python) (0) | 2020.04.02 |
[Baekjoon Online Judge] 백준 1427번 소트인사이드(Python) (0) | 2020.04.02 |