https://www.acmicpc.net/problem/2581
소수인지를 소수 판별 알고리즘을 사용해 확인 후 소수인 경우만 배열에 저장한다. 이후 sum과 min 함수를 사용해 합과 최솟값을 구한다.
import math
m = int(input())
n = int(input())
arr = []
for i in range(m,n + 1):
if i < 2:
continue
isPrime = True
for j in range(2, int(math.sqrt(i)) + 1):
if i % j == 0:
isPrime = False
break
if isPrime:
arr.append(i)
if len(arr) != 0:
print(sum(arr))
print(min(arr))
else:
print(-1)
📚 1. 소수 판별 알고리즘
isPrime = True for j in range(2, int(math.sqrt(i)) + 1): if i % j == 0: isPrime = False break
- sum() : 리스트나 튜플의 합을 구할 때 사용, min() : 최솟값을 반환에서 사용