문제 출처: 백준 2750번 수 정렬하기

문제


스크린샷 2022-07-27 오전 11 19 59

풀이


정렬하는 문제는 대부분 시간복잡도를 신경 쓰면서 풀어야 합니다.
이 문제의 경우 O(n^2)로 풀 수 있다고 설명에 나와 있는데요.
배열의 sorted() 함수를 이용해 간단하게 풀 수 있습니다.
sorted() 설명을 보시면 시간복잡도가 O(n log n)이라고 나와 있습니다.

1
2
3
4
5
6
7
8
9
10
var arr: [Int] = []

for _ in 0..<Int(readLine()!)! {
  arr.append(Int(readLine()!)!)
}

// 정렬하여 한 줄씩 출력
arr.sorted().forEach {
  print($0)
}
  1. 입력받은 수만큼 반복문을 실행합니다.
  2. Int 형 배열에 입력받은 수를 넣습니다.
  3. 배열을 정렬하여 출력합니다.

이렇게 풀 경우 메모리: 69104 KB, 시간: 12 ms 결과가 나오게 됩니다.

업데이트:

댓글남기기