[기본수학2] 소수
2021. 3. 12. 12:25ㆍ백준
소수찾기 문제랑 사실상 같다.
설명은 생략
from sys import stdin
import math
test_min = int(stdin.readline())
test_max = int(stdin.readline())
# 확인할 소수 갯수
pn_sum = 0
pn_min = 0
pn_range_list = []
# 10 이하 소수 리스트
pn_list = [2, 3, 5, 7]
def check_prime_no(no: int):
# 1,0 이면 제외
if no == 1 or 0:
return False
# 이미 소수 리스트에 속한 요소면 소수
if no in pn_list:
return True
for j in range(2, math.ceil(math.sqrt(no)) + 1):
if no % j == 0:
return False
# 없으면 소수니까 소수 리스트에 넣고 참 반환
pn_list.append(no)
return True
for i in range(test_min, test_max + 1):
if check_prime_no(i):
pn_range_list.append(i)
if len(pn_range_list) > 0:
print(sum(pn_range_list))
print(min(pn_range_list))
else:
print(-1)