프로그래머스 코딩테스트 고득점 Kit_완전탐색_소수찾기

Minhee kang·2021년 10월 7일
0

문제 보러 가기 👈 클릭!

💡 풀이

✔ 풀이 방법

  • 순열 모듈 permutations 사용 하여 길이가 1~ len(numbers)인 모든 경우의 수를 구하고 소수인지 아닌지 판단
  • 소수이면 prime_nums에 원소 추가
  • 중복을 막기 위해 set자료형 사용

구현 코드👇

from itertools import permutations

#소수 판별 함수
def is_prime(num):
    for n in range(2, num):
        if num % n == 0:
            return False
    return True if num > 1 else False
    
def solution(numbers):
    prime_nums = set()
    for n in range(1, len(numbers) + 1):
        for tp in permutations(numbers, n):
            if is_prime(int(''.join(tp))):
                prime_nums.add(int(''.join(tp)))
    
    return len(prime_nums)

0개의 댓글