알고리즘의 공부가 필요하겠다 싶어서 공부를 시작하게 됐는데 문제를 이해하는게 어렵네요ㅋㅋ
문제를 이해하면 로직은간단한거같은데 문제를 이해하는게 관건일듯 싶습니다
1. Scanner와 IntArray를 이용한 방식
import java.util.*
fun main(args: Array<String>) = with(Scanner(System.`in`)) {
val n = nextInt()
val x = nextInt()
val array = IntArray(n)
for (i in 0 until n) {
array[i] = nextInt()
}
for (i in 0 until n) {
if (array[i] < x) {
print("${array[i]} ")
}
}
}
2. BufferedReader를 이용한 방식
fun main(args: Array<String>) {
val br = BufferedReader(InputStreamReader(System.`in`))
var st = StringTokenizer(br.readLine(), " ")
val n = st.nextToken().toInt()
val x = st.nextToken().toInt()
val sb = StringBuilder()
st = StringTokenizer(br.readLine(), " ")
for (i in 0 until n) {
val value = st.nextToken().toInt()
if (value < x) sb.append(value).append(' ')
}
print(sb)
}
1번의 코드가 간단하지만
2번의 코드가 메모리면에서 2배, 속도면에서 4배가 더 빠른 차이를 보였습니다 (ms의 차이라 체감은 안나지만..)
처음 공부해보는거라 생소하네요 꾸준히 해야할듯 싶습니다
더 나은 방법이 있다면 댓글 남겨주시면 감사하겠습니다!
'개발 > 알고리즘' 카테고리의 다른 글
[알고리즘] 백준 1929번 : 소수 구하기 (Koltin) (0) | 2020.12.06 |
---|---|
[알고리즘] 백준 2839번 : 설탕 배달 (Kotlin) (0) | 2020.12.02 |
[알고리즘] 백준 1152번 : 단어의 개수 (Kotlin) (0) | 2020.12.01 |
[알고리즘] 백준 2562번 : 최댓값 (Kotlin) (0) | 2020.11.26 |
[알고리즘] 백준 10952번 : A+B-5 (Kotlin) (0) | 2020.11.19 |
댓글