내 코드
from itertools import permutations ''' def prime(num): for i in range(2, int(num**0.5 + 1)): if num % i == 0: return False return True ''' def solution(numbers): answer = [] P = [] for i in range(1, len(numbers)+1): p = list(map(''.join, permutations(numbers, i))) P += p ''' real = list(map(int, P)) real = set(real) ''' for j in real: if prime(int(j)) == True and j != 0 and j !=1 : answer.append(j) ''' return len(answer)
+5

다른 풀이
from itertools import permutations def solution(n): a = set() for i in range(len(n)): a |= set(map(int, map("".join, permutations(list(n), i + 1)))) a -= set(range(0, 2)) for i in range(2, int(max(a) ** 0.5) + 1): a -= set(range(i * 2, max(a) + 1, i)) return len(a)
효율 안 좋음 ㅎ