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
반응형
'자료구조&알고리즘' 카테고리의 다른 글
[백준] 2798번 : 블랙잭 (Kotlin) + 브루트포스 알고리즘 (0) | 2023.01.20 |
---|---|
[백준] 11653번 : 소인수분해 (Kotlin) (1) | 2023.01.19 |
[백준] 1181번 : 단어 정렬 (Kotlin) (0) | 2023.01.09 |
[백준] 11650번 : 좌표 정렬하기 (Kotlin) (0) | 2023.01.07 |
[백준] 2839번 : 설탕 배달 (Kotlin) (2) | 2022.12.27 |