컴공생의 다이어리
[프로그래머스] 소수 찾기 - 파이썬(Python) 본문
[프로그래머스] 소수 찾기 - 파이썬(Python)
import itertools
def is_prime(num): # 소수 판별
if num < 2:
return False
for n in range(2, num):
if num % n == 0:
return False
return True
def solution(numbers):
prime_num_candidate = []
for i in range(len(numbers)):
prime_num_candidate.extend(map("".join, itertools.permutations(numbers, i + 1)))
prime_num_candidate = set(map(int, prime_num_candidate))
answer = 0
for num in prime_num_candidate:
if is_prime(num):
answer += 1
return answer
아래는 프로그래머스에서 공개한 다른 사람의 풀이에 있던 것이다.
from itertools import permutations
def solution(numbers):
a = set()
for i in range(len(numbers)):
a |= set(map(int, map("".join, permutations(list(numbers), 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)
https://programmers.co.kr/learn/courses/30/lessons/42839
728x90
반응형
'Development > Algorithm & Coding Test' 카테고리의 다른 글
[파이썬, Python] 백준 3460번 : 이진수 (0) | 2022.04.18 |
---|---|
[파이썬, Python] 백준 2501번 : 약수 구하기 (2) | 2022.04.18 |
[프로그래머스] 모의고사 - 파이썬(Python) (0) | 2022.04.16 |
[파이썬, Python] 백준 2798번 : 블랙잭 (0) | 2022.04.15 |
[알고리즘] 선형 탐색(Linear Search) (0) | 2022.04.14 |
Comments