알고리즘/programmers[1]

[프로그래머스] 소수 만들기: python3

fladi 2022. 1. 16. 17:11
728x90
def isPrime(num):   
    d = 2
    while d**2 <= num:
        if num%d == 0:
            return False
        d += 1

    return True

def solution(nums):
    answer = 0

    for i in range(0, len(nums)-2):
        for j in range(i+1, len(nums)-1):
            for k in range(j+1, len(nums)):
                if (isPrime(nums[i]+nums[j]+nums[k])):
                    answer += 1

    return answer

<내 풀이 분석>

1. isPrime함수를 만들어 소수판별(서로 다른 자연수 3개를 더하므로 항상 1보다 큼. 1이하인 경우는 구현필요x)

2. 서로 다른 3개를 for문 3개로 뽑아 iaPrime함수 호출, 만약 소수라면 answer++

 

728x90