개발공부/algorithm
[프로그래머스][python] 소수찾기
so.py
2021. 6. 6. 20:29
문제
- 프로그래머스 소수찾기
- Level 2
- 문제링크
코딩테스트 연습 - 소수 찾기
한자리 숫자가 적힌 종이 조각이 흩어져있습니다. 흩어진 종이 조각을 붙여 소수를 몇 개 만들 수 있는지 알아내려 합니다. 각 종이 조각에 적힌 숫자가 적힌 문자열 numbers가 주어졌을 때, 종이
programmers.co.kr
나의 코드
- 주어진 숫자의 길이만큼 순열을 만들고
- 각 순열로 만들어진 숫자에 대해 소수인지 확인한다.
간단!
import itertools
def prime(num):
if num > 1:
for i in range(2, int(num/2)+1):
if (num % i) == 0:
return False
else:
return True
else:
return False
def solution(numbers):
res = set()
for i in range(1, len(numbers) + 1):
a = list(itertools.permutations(numbers, i))
res.update(int(''.join(b)) for b in a)
cnt = 0
for r in res:
if prime(r):
cnt += 1
print(r)
return cnt