-
Kotlin π¬ λ°±μ€ 15λ¨κ³ :: 4134 λ²2024. 3. 12. 15:08λ°μν
λ€μ μμ
λ¬Έμ |
μ μ n(0 ≤ n ≤ 4*$10^{9}$)κ° μ£Όμ΄μ‘μ λ, nλ³΄λ€ ν¬κ±°λ κ°μ μμ μ€ κ°μ₯ μμ μμ μ°Ύλ νλ‘κ·Έλ¨μ μμ±νμμ€.
μ λ ₯ |
첫째 μ€μ ν μ€νΈ μΌμ΄μ€μ κ°μκ° μ£Όμ΄μ§λ€. κ° ν μ€νΈ μΌμ΄μ€λ ν μ€λ‘ μ΄λ£¨μ΄μ Έ μκ³ , μ μ nμ΄ μ£Όμ΄μ§λ€.
μΆλ ₯ |
κ°κ°μ ν μ€νΈ μΌμ΄μ€μ λν΄μ nλ³΄λ€ ν¬κ±°λ κ°μ μμ μ€ κ°μ₯ μμ μμλ₯Ό ν μ€μ νλμ© μΆλ ₯νλ€.
νμ΄ |
μλΌν μ€ν λ€μ€μ 체 μκ³ λ¦¬μ¦μ μ΄μ©ν΄ μμ λμΆ (μΈμλκΈ°) 6k ± 1 κ·μΉμ μ΄μ©
λ΅μ |
fun main() { val count = readLine()!!.toInt() repeat(count) { val num = readLine()!!.toLong() val prime = nextNum(num) println(prime) } } fun nextNum(n: Long): Long { var num = n if (num <= 1) num = 2 while (!isPrime(num)) { num++ } return num } fun isPrime(num: Long): Boolean { if (num <= 1) return false if (num <= 3) return true if (num % 2 == 0L || num % 3 == 0L) return false var i = 5L while (i * i <= num) { if (num % i == 0L || num % (i + 2) == 0L) { return false } i += 6 } return true }
λ°μν'π Algorithm > π λ°±μ€' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
Kotlin π¬ λ°±μ€ 15λ¨κ³ :: 4948 λ² (0) 2024.03.14 Kotlin π¬ λ°±μ€ 15λ¨κ³ :: 1929 λ² (0) 2024.03.13 Kotlin π¬ λ°±μ€ 15λ¨κ³ :: 2485 λ² (0) 2024.03.11 Kotlin π¬ λ°±μ€ 15λ¨κ³ :: 1735 λ² (0) 2024.03.10 Kotlin π¬ λ°±μ€ 15λ¨κ³ :: 13241 λ² (0) 2024.03.09