bit가 눈 앞에서 왔다갔다

Py) 프로그래머스 42839 본문

Algorithm/Prob

Py) 프로그래머스 42839

헬린인형 2021. 12. 28. 17:45

https://programmers.co.kr/learn/courses/30/lessons/42839?language=python3 

 

코딩테스트 연습 - 소수 찾기

한자리 숫자가 적힌 종이 조각이 흩어져있습니다. 흩어진 종이 조각을 붙여 소수를 몇 개 만들 수 있는지 알아내려 합니다. 각 종이 조각에 적힌 숫자가 적힌 문자열 numbers가 주어졌을 때, 종이

programmers.co.kr

 

from itertools import permutations

def check(x):
    if x < 2:
        return False
    for i in range(2, x):
        if x % i == 0:
            return False
    return True

def solution(numbers):
    answer = []
    per = []        # 중복제거, 확인용
    for i in range(1, len(numbers)+1):  # r에 들어갈 수 정하는 중
        per = list(map(''.join, permutations(numbers, i)))
        per = set(per)
        for j in per:
            if check(int(j)):
                answer.append(int(j))

    answer = set(answer)  # answer중에 중복제거를 수행해야함
    return len(answer)

 

*

set: 집합- list를 각각 하나의 원소로 분리, 중복 제거 효과

from itertools import permutations : 순열

소수: 1을 제외한 약수가 자기 자신, 2 아님

 

반응형

'Algorithm > Prob' 카테고리의 다른 글

Py) 프로그래머스 42895  (0) 2022.01.03
Py) 프로그래머스 49189  (0) 2021.12.31
프로그래머스) 42586  (0) 2021.09.03
프로그래머스) 42748  (0) 2021.09.02
이코테_BFS, DFS) Q19 연산자 끼워 넣기  (2) 2021.08.19
Comments