• Home
  • About
    • Moon photo

      Moon

      개발자는 자고 싶다.

    • Learn More
    • Twitter
    • Facebook
    • Instagram
    • Github
    • Steam
  • Posts
    • All Posts
    • All Tags
  • Projects

백준 - 2581 소수

05 Jun 2022

Reading time ~1 minute

문제

2581 소수

screencapture

답

kotlin code

fun main() {
    q2581()
}

fun q2581() {
    val min = readln().toInt()
    val max = readln().toInt()

    val result = (min..max).filter { isPrime(it) }
    if(result.isEmpty())
        println(-1)
    else {
        println(result.sum())
        println(result.minOf { it })
    }
}

private fun isPrime(n: Int): Boolean = when {
    n == 2 -> true
    n < 2 || n.isOdd() -> false
    else -> {
        var result = true
        for (i in 3..n/2) {
            if (n % i == 0) {
                result = false
                break
            }
        }
        result
    }
}

private fun Int.isOdd(): Boolean {
    return this % 2 == 0
}


baekjoonkotlin코틀린백준실버수학정수론소수소수 판정 Share Tweet +1