Kotlin π¬ λ°±μ€ 9λ¨κ³ :: 2581 λ²
μμ
λ¬Έμ |
μμ°μ Mκ³Ό Nμ΄ μ£Όμ΄μ§ λ Mμ΄μ Nμ΄νμ μμ°μ μ€ μμμΈ κ²μ λͺ¨λ κ³¨λΌ μ΄λ€ μμμ ν©κ³Ό μ΅μκ°μ μ°Ύλ νλ‘κ·Έλ¨μ μμ±νμμ€.
μλ₯Ό λ€μ΄ M=60, N=100μΈ κ²½μ° 60μ΄μ 100μ΄νμ μμ°μ μ€ μμλ 61, 67, 71, 73, 79, 83, 89, 97 μ΄ 8κ°κ° μμΌλ―λ‘, μ΄λ€ μμμ ν©μ 620μ΄κ³ , μ΅μκ°μ 61μ΄ λλ€.
μ λ ₯ |
μ λ ₯μ 첫째 μ€μ Mμ΄, λμ§Έ μ€μ Nμ΄ μ£Όμ΄μ§λ€.
Mκ³Ό Nμ 10,000μ΄νμ μμ°μμ΄λ©°, Mμ Nλ³΄λ€ μκ±°λ κ°λ€.
μΆλ ₯ |
Mμ΄μ Nμ΄νμ μμ°μ μ€ μμμΈ κ²μ λͺ¨λ μ°Ύμ 첫째 μ€μ κ·Έ ν©μ, λμ§Έ μ€μ κ·Έ μ€ μ΅μκ°μ μΆλ ₯νλ€.
λ¨, Mμ΄μ Nμ΄νμ μμ°μ μ€ μμκ° μμ κ²½μ°λ 첫째 μ€μ -1μ μΆλ ₯νλ€.
νμ΄ |
Mκ³Ό Nμ μ λ ₯λ°μ M μ΄μ N μ΄νμ μμ°μ μ€ μμμΈ κ²μ ν©κ³Ό κ·Έ μ΅μκ°μ ꡬνλ€.
λ΅μ |
import java.util.Scanner
fun main() = with(Scanner(System.`in`)) {
val M = nextInt()
val N = nextInt()
var result = 0
var minimum = 0
for (i in N downTo M) {
if (isPrime(i)) {
result += i
minimum = i
}
}
if (result == 0) {
print(-1)
} else {
print("$result\n$minimum")
}
}
fun isPrime(num: Int): Boolean {
if (num == 1) return false
for (j in 2..num - 1) {
if (num % j == 0) return false
}
return true
}