CodingTest/Programers

[programers] 프로그래머스(파이썬) : 소수 만들기

JunJangE 2022. 4. 24. 01:49

문제

 

코딩테스트 연습 - 소수 만들기

주어진 숫자 중 3개의 수를 더했을 때 소수가 되는 경우의 개수를 구하려고 합니다. 숫자들이 들어있는 배열 nums가 매개변수로 주어질 때, nums에 있는 숫자들 중 서로 다른 3개를 골라 더했을 때

programmers.co.kr

알고리즘

- 반복문을 통해 3개의 수를 확인한다.

- 3개의 수를 더한 값이 소수라면 카운트한다.

코드

def primenumber(x):
    for i in range(2, x):	# 2부터 x-1까지의 모든 숫자
    	if x % i == 0:		# 나눠떨어지는게 하나라도 있으면 False
        	return False
    return True

def solution(nums):
    answer = 0
    
    # 반복문을 통해 3가지 수를 확인
    for i in range(len(nums) - 2):
        for j in range(i + 1, len(nums) - 1):
            for k in range(j + 1, len(nums)):
                
                # 3가지 수를 더한 값이 소수라면 카운트
                if primenumber(nums[i] + nums[j] + nums[k]):
                    answer += 1
    
    return answer

github

 

GitHub - junjange/CodingTest: 내가 푼 코딩 테스트 문제와 해결법

내가 푼 코딩 테스트 문제와 해결법. Contribute to junjange/CodingTest development by creating an account on GitHub.

github.com