// 입력받은 단어의 개수를 정수형으로 변환하여 n에 저장합니다.
let n = Int(readLine()!)!
// 중복 제거를 위해 Set 타입을 사용합니다.
var words = Set<String>()
// n번만큼 반복하여 단어를 입력 받고 Set에 추가합니다.
for _ in 0..<n {
if let line = readLine() {
words.insert(line)
}
}
// 단어들을 길이의 오름차순, 그리고 길이가 같으면 사전순으로 정렬합니다.
let sortedWords = words.sorted {
if $0.count == $1.count {
return $0 < $1
}
return $0.count < $1.count
}
// 정렬된 결과를 한 줄씩 출력합니다.
for word in sortedWords {
print(word)
}반응형
'알고리즘' 카테고리의 다른 글
| 백준 25325번 문제 풀이 (0) | 2025.04.21 |
|---|---|
| 백준 29723번 문제 풀이 (0) | 2025.04.18 |
| 백준 25757번 문제 풀이 (0) | 2025.04.16 |
| leetcode 187. Repeated DNA Sequences (0) | 2025.04.15 |
| 백준 2358번 평행선 문제 풀이 (0) | 2025.04.14 |