티스토리 뷰

728x90
반응형

https://www.acmicpc.net/problem/2581

 

2581번: 소수

M이상 N이하의 자연수 중 소수인 것을 모두 찾아 첫째 줄에 그 합을, 둘째 줄에 그 중 최솟값을 출력한다.  단, M이상 N이하의 자연수 중 소수가 없을 경우는 첫째 줄에 -1을 출력한다.

www.acmicpc.net

내 코드

def check(num):
    if num==1:
        return False;
    for i in range(2,num):
        if num==2:
            return True
        if num!=2:
            if num%i==0:
                return False
        
    return True

m=int(input())
n=int(input())
arr=[]
for item in range(m,n+1):
    if(check(item)):
        arr.append(item)
if arr:
    print(sum(arr)) 
    print(arr[0])
else:
    print(-1)

1일 때를 생각 못해서 처음에 틀렸는데 1인 경우를 추가해주었다.

반응형
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2025/01   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
글 보관함