https://school.programmers.co.kr/learn/courses/30/lessons/42839?language=python3
from itertools import permutations
def is_prime(num):
i = 1
count = 0
while i * i <= num:
if i * i == num:
count += 1
elif num % i == 0:
count += 2
i += 1
return count == 2
def solution(numbers):
answer = 0
number_set = set()
for i in range(1, len(numbers) + 1):
for card in permutations(list(numbers), i):
new_number = int("".join(card))
if is_prime(new_number):
number_set.add(new_number)
return len(number_set)
permutations을 이용하여 숫자 카드 조합을 구하였다.
이후 약수의 개수를 구하여 2개인지 확인하여 소수 여부를 확인하였다.
set을 이용하여 중복을 제거하였다.