
📃 소수 찾기
2이상 n이하의 자연수 생성한다.
그 자연수가 소수인지 아닌지 판별한다.
소수라면 result에 1을 더한다.
효율성을 위해 에라토스테네스의 체를 적용한다.
def solution(n):
num = set(range(2, n+1))
for i in range(2, n+1):
if i in num:
num -= set(range(2*i, n+1, i))
return len(num)
s1 = {"a", "b", "c"}
s2 = {"d", "e", "f"}
# OR, |
s1 | s2
# >> {'a', 'b', 'c', 'd', 'e', 'f'}
# `s1` is unchanged
s1
# >> {'a', 'b', 'c'}
# In-place OR, |=
s1 |= s2
# `s1` is reassigned
s1
# >> {'a', 'b', 'c', 'd', 'e', 'f'}
from itertools import permutations
def solution(n):
a = set()
for i in range(len(n)):
a |= set(map(int, map("".join, permutations(list(n), 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)
from itertools import permutations
def is_prime(num) :
if num < 2 :
return False
for i in range(2,(num//2)+1):
if num % i == 0 :
return False
return True
def solution(numbers):
answer = 0
per = []
# print(list(numbers)) -> ['1', '7']
for i in range(len(numbers)):
per+=list(map(''.join,permutations(list(numbers),i+1)))
print(per)
per = set(list(map(int,per)))
for i in per :
if is_prime(i):
answer += 1
return answer