[프로그래머스] 소수 만들기(Kotlin)

728x90

문제

이해

  • 주어진 숫자 중 3개의 수를 더했을때 소수가 된는 경우의 개수 Return

접근

  • 삼중 for문을 사용한 3가지 합의 경우의 수 구하기
  • 플래그 + 합이 소수인지 판별해서 answer++

풀이

class Solution {
    fun solution(nums: IntArray): Int {
        var answer = 0

        for (i in 0 until nums.size - 2) {
            for (j in i + 1 until nums.size - 1) {
                for (k in j + 1 until nums.size) {
                    var sum = nums[i] + nums[j] + nums[k]
                    var flag = 0
                    for (l in 2 until sum) {
                        if (sum % l == 0) {
                            flag = 1
                            break
                        }
                    }
                    if (flag == 0) {
                        answer += 1
                    }
                }
            }
        }
        return answer
    }
}
728x90

댓글

Designed by JB FACTORY