Computer Science/자료구조

[6.7] 프로그래머스 코딩테스트 연습 - 소수 만들기(7/100)

토마토. 2021. 6. 7. 09:20

코딩테스트 연습 - 소수 만들기 | 프로그래머스 (programmers.co.kr)

 

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

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

programmers.co.kr

# 3개의 수를 더했더니 소수가 되는 경우의 수

# 숫자에 있는 배열이 매개변수로 주어진다. 

# 3개를 골라 더하면 소수가 되는 경우를 return한다.

# 소수가 없으면 -1 출력

# num의 숫자는 3 이상 50 이하

def check(sum):
  for i in range(2, (sum//2)+1):
    if sum % i == 0:
      return False
  return True

def solution(nums):
    n = len(nums)
    answer = 0
    for i in range(0, n-2):
      for j in range(i+1, n-1):
        for k in range(j+1, n):
          sum = nums[i] + nums[j] + nums[k]
          if check(sum):
            answer += 1
    
    return answer