수 정렬하기 3 성공
시간 제한메모리 제한제출정답맞은 사람정답 비율
3 초 (하단 참고) | 8 MB (하단 참고) | 114200 | 23776 | 18293 | 23.107% |
문제
N개의 수가 주어졌을 때, 이를 오름차순으로 정렬하는 프로그램을 작성하시오.
입력
첫째 줄에 수의 개수 N(1 ≤ N ≤ 10,000,000)이 주어진다. 둘째 줄부터 N개의 줄에는 숫자가 주어진다. 이 수는 10,000보다 작거나 같은 자연수이다.
출력
첫째 줄부터 N개의 줄에 오름차순으로 정렬한 결과를 한 줄에 하나씩 출력한다.
예제 입력 1 복사
10 5 2 3 1 4 2 3 5 1 7
예제 출력 1 복사
1 1 2 2 3 3 4 5 5 7
출처
비슷한 문제
알고리즘 분류
시간 제한
- Java 8: 3 초
- Java 8 (OpenJDK): 3 초
- Java 11: 3 초
- Kotlin (JVM): 3 초
메모리 제한
- Java 8: 512 MB
- Java 8 (OpenJDK): 512 MB
- Java 11: 512 MB
- Kotlin (JVM): 512 MB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
|
import java.io.BufferedReader
import java.io.BufferedWriter
import java.io.InputStreamReader
import java.io.OutputStreamWriter
val br = BufferedReader(InputStreamReader(System.`in`))
fun main(){
val bw = BufferedWriter(OutputStreamWriter(System.out))
val N = br.readLine()!!.toInt()
val list = IntArray(N)
for(i in 0 until N){
list[i]=br.readLine()!!.toInt()
}
list.sort()
for(i in 0 until N){
bw.write("${list[i]}\n")
}
bw.flush()
bw.close()
}
|
cs |
나는 줄 곧 배열을 선언할때 MutableList로 선언을 했었는데, 이러한 코딩의 단점을 알려주는 문제였다.
List는 여러가지 메소드를 지원을 하는 대신 메모리와 시간이 상대적으로 느리다.
이를 해결하기위해선 원래 배열을 선언하는 방법인 IntArray 같은 방법을 사용해야했다.
'알고리즘 공부 > 미분류' 카테고리의 다른 글
백준 18111번 with Kotlin (0) | 2021.07.22 |
---|---|
백준 15829번 with Kotlin (0) | 2021.07.22 |
백준 10773번 with Kotlin (0) | 2021.07.22 |
백준 7568번 with Kotlin # Pair의 MutableList 선언 (0) | 2021.07.22 |
백준 2292 with Kotlin (0) | 2021.07.21 |