from itertools import combinations
def solution(nums):
ans = 0
num = list(map(sum,combinations(nums,3)))
for prime_num in num:
for i in range(2,prime_num):
if prime_num % i == 0:
break
else:
ans +=1
return ans
nums 중 3개를 뽑아 합을 구한 후 list로 만들기.
이중 for 문을 사용해 2와 list의 원소들, 그 사잇값들을 찾되
(1은 자기 자신으로 나누는 case이므로 제외)
나누어떨어지면 1과 자기 자신 외에 또 다른 소인수가 있다는 뜻이므로 break으로 빠져나감.
그 외 case는 1과 자기 자신만 가지기에 ans의 CNT를 1씩 증가시킨 후
최종적으로 ans return
import itertools
chars = ['a','b,'c']
p = itertools.permutations(chars, 2) # 순열
c = itertools.combinations(chars, 2) # 조합
print(list(p))
[('A', 'B'), ('A', 'C'), ('B', 'A'), ('B', 'C'), ('C', 'A'), ('C', 'B')]
print(list(c))
[('A', 'B'), ('A', 'C'), ('B', 'C')]