M = int(input())
N = int(input())
num_list = [i for i in range(M, N+1)]
import math
# 소수 판별
def primenumber(x):
for i in range (2, int(math.sqrt(x) + 1)): # 2부터 x의 제곱근까지의 숫자
if x % i == 0: # 나눠떨어지는 숫자가 있으면 소수가 아님
return False
return True
ans_list = []
for i in num_list:
if primenumber(i) == True:
ans_list.append(i)
else:
continue
if len(ans_list) == 0 :
print(-1)
else:
sum1 = sum(ans_list)
min1 = min(ans_list)
print(sum1)
print(min1)
주어진 숫자 범위의 리스트를 만들고 소수판별 함수를 돌려 소수인 경우에만 정답 리스트에 추가하기, 정답 리스트의 합과 최소값을 사용해 답을 출력했는데 1 처리를 여기서 까먹었다...
M = int(input())
N = int(input())
num_list = [i for i in range(M, N+1)]
if num_list[0] == 1:
num_list.pop(0)
import math
# 소수 판별
def primenumber(x):
for i in range (2, int(math.sqrt(x) + 1)): # 2부터 x의 제곱근까지의 숫자
if x % i == 0: # 나눠떨어지는 숫자가 있으면 소수가 아님
return False
return True
ans_list = []
for i in num_list:
if primenumber(i) == True:
ans_list.append(i)
else:
continue
if len(ans_list) == 0 :
print(-1)
else:
sum1 = sum(ans_list)
min1 = min(ans_list)
print(sum1)
print(min1)
1처리 해주고 통과