본문 바로가기
자료구조&알고리즘

[백준] 2581번 : 소수 (Kotlin)

by JongSeok 2022. 12. 28.
 

2581번: 소수

M이상 N이하의 자연수 중 소수인 것을 모두 찾아 첫째 줄에 그 합을, 둘째 줄에 그 중 최솟값을 출력한다.  단, M이상 N이하의 자연수 중 소수가 없을 경우는 첫째 줄에 -1을 출력한다.

www.acmicpc.net

나의 풀이

fun main(args: Array<String>) {
    val M = readLine()!!.toInt()
    val N = readLine()!!.toInt()
    val result = ArrayList<Int>()

    for (i in M..N) {
        var count = 0
        for (j in 1..i) {
            if (i % j == 0) {
                count++
            }
        }
        if (count == 2) {
            result.add(i)
        }
    }

    if (result.size == 0) {
        println("-1")
    } else {
        println(result.sum())
        println(result.first())
    }
}

☞ 범위 내의 각 숫자가 소수인지 확인하여 배열에 저장하는 방식으로 해결했습니다.

728x90
반응형