본문 바로가기

Kotlin/Baekjoon

백준 1978 코틀린

반응형

 

예전에 자바로 풀었던 문제를 코틀린으로 다시 푼 거라서 알고리즘은 동일합니다.

다만 아직 코틀린에서의 배열이나 함수 사용은 좀 미숙해서 시간이 좀 걸렸습니다.

 

import java.util.*
import java.io.*
import kotlin.text.*


val arr = BooleanArray(1001)
fun main() {
    val br = BufferedReader(InputStreamReader(System.`in`))

    arr[0] = true
    arr[1] = true

    var cnt=  0

    val N = br.readLine().toInt()

    val st = StringTokenizer(br.readLine())
    for (i in 0 until N) {
        val num = st.nextToken().toInt()

        Prime()

        if (!arr[num]) {
            cnt++
        }

    }
    println(cnt)
}
 fun  Prime() {

    for (i in 2..Math.sqrt(arr.size.toDouble()).toInt()) {
        if(arr[i]) {
            continue
        }

        for (j in i*i until arr.size step i) {
            arr[j] = true
        }
    }
}
반응형

'Kotlin > Baekjoon' 카테고리의 다른 글

백준 15904 코틀린  (0) 2022.12.28
백준 2512 코틀린  (0) 2022.11.16
백준 1744 코틀린  (0) 2022.11.15
백준 2739 코틀린  (0) 2022.11.10
백준 1330 코틀린  (0) 2022.11.10