프로그래머스 알고리즘 Level 1 코틀린 소수 만들기

2023. 1. 27. 11:31알고리즘/문제

https://school.programmers.co.kr/learn/courses/30/lessons/12977

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

풀이 - 성공

class Solution {
    fun solution(nums: IntArray): Int {
        var answer = 0
        for(i in 0..nums.size-3) {
            for(j in i+1..nums.size-2){
                for(k in j+1..nums.size-1) {
                    if(cnt(nums[i]+nums[j]+nums[k])==2) answer++
                }
            }
        }

        return answer
    }

    fun cnt(N : Int): Int {
        var count = 0
        for (i in 1..N) {
            if (i * i > N) break
            else {
                if (i * i == N) count++
                else
                    if (N % i == 0) count += 2
            }
        }
        return count
    }
}