๐Ÿ“š Study/Baekjoon

ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค Lv2 | ์™„์ „ํƒ์ƒ‰ | ์†Œ์ˆ˜ ์ฐพ๊ธฐ

์œฐ๊ฐฑ 2025. 10. 11. 03:09

https://school.programmers.co.kr/learn/courses/30/lessons/42839#

 

ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค

SW๊ฐœ๋ฐœ์ž๋ฅผ ์œ„ํ•œ ํ‰๊ฐ€, ๊ต์œก์˜ Total Solution์„ ์ œ๊ณตํ•˜๋Š” ๊ฐœ๋ฐœ์ž ์„ฑ์žฅ์„ ์œ„ํ•œ ๋ฒ ์ด์Šค์บ ํ”„

programmers.co.kr

 

import math
from itertools import permutations

def prime(number):
    if number == 0 or number == 1:
        return 0
    for i in range(2,math.floor(math.sqrt(number))+1):
        if number%i==0:
            return 0 # ์†Œ์ˆ˜๊ฐ€ ์•„๋‹ˆ๋‹ค
    return 1 # ์†Œ์ˆ˜์ด๋‹ค

def make_number(combination):
    number = ''
    for c in combination:
        number += c
    return number
    
def solution(numbers):
    number_list = [c for c in numbers]
    prime_list = set()
    for i in range(1, len(number_list)+1):
        for c in permutations(number_list,i):
            number = int(make_number(c))
            if prime(number):
                prime_list.add(number)

    return len(prime_list)