백준 문제풀이
baekjoon - python - 2581
winston1214
2020. 8. 29. 23:44
반응형
https://www.acmicpc.net/problem/2581
2581번: 소수
M이상 N이하의 자연수 중 소수인 것을 모두 찾아 첫째 줄에 그 합을, 둘째 줄에 그 중 최솟값을 출력한다. 단, M이상 N이하의 자연수 중 소수가 없을 경우는 첫째 줄에 -1을 출력한다.
www.acmicpc.net
import math
def isPrime(num):
if num == 1:
return False
n = int(math.sqrt(num))
for i in range(2,n+1):
if num%i==0:
return False
return True
M = int(input())
N = int(input())
ls=[]
for i in range(M,N+1):
if isPrime(i):
ls.append(i)
if len(ls) == 0:
print(-1)
else:
print(sum(ls))
print(min(ls))
반응형