https://school.programmers.co.kr/learn/courses/30/lessons/12977
from itertools import combinations
list(combinations(nums, n))
출처 : https://ourcstory.tistory.com/414
2. 3개의 수의 합이 소수인지 판별
# 하나의 리스트에서 모든 조합을 계산을 해야 한다면, permutations(순열), combinations(조합)을 사용
# 두개 이상의 리스트에서 모든 조합을 계산해야 한다면, product를 사용
from itertools import combinations
def solution(nums):
answer = 0
ns = list(combinations(nums, 3)) #5C3(세개의 숫자 고르기)
for n in ns:
if isPrime(sum(n)): #소수판별
answer+=1
return answer
def isPrime(n): #소수 판별
for i in range(2, n):
if n%i==0:
return False
return True
조합 라이브러리 뭔지 몰라서 구글링함.
소수 알고리즘도 구글링 함. 잊고있던 에라토스테네스의 체를 떠올림.
보너스: 순열은 permutations이고 두개 이상의 리스트의 모든 조합은 product.