정답 코드
let count = Int(readLine()!)!
var set: Set<String> = Set<String>()
for _ in 0..<count {
set.insert(readLine()!)
}
let sortedSet = set.sorted { (first, second) -> Bool in
if first.count == second.count {
return first < second
} else {
return first.count < second.count
}
}
for component in sortedSet {
print(component)
}
코드 설명
- 중복이 된 내용은 한번만 출력해주기 때문에 set을 생성합니다.
- sorted(by:) 메서드를 사용하여 길이가 작은 순 대로 정렬하고 길이가 같다면 알파벳 순으로 정렬합니다.
https://www.acmicpc.net/problem/1181
'코딩테스트 > 문제풀이-1' 카테고리의 다른 글
[선택] 1316 그룹 단어 체커 (1) | 2024.01.30 |
---|---|
[선택] 11720 숫자의 합 (0) | 2024.01.29 |
[선택] 2002 추월 (0) | 2024.01.29 |
[선택] 1620 나는야 포켓몬 마스터 이다솜 (0) | 2024.01.29 |
[선택] 7785 회사에 있는 사람 (2) | 2024.01.29 |
[선택] 2846 오르막길 (0) | 2024.01.25 |
[선택] 2947 나무 조각 (0) | 2024.01.25 |
[선택] 10818 최소, 최대 (0) | 2024.01.25 |