Notice
Recent Posts
Recent Comments
05-20 20:45
«   2024/05   »
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
Archives
Today
Total
관리 메뉴

-

[백준 1929] 소수 구하기 - 파이썬 본문

Algorithm

[백준 1929] 소수 구하기 - 파이썬

choiht 2023. 4. 29. 13:30
반응형

문제

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

 

1929번: 소수 구하기

첫째 줄에 자연수 M과 N이 빈 칸을 사이에 두고 주어진다. (1 ≤ M ≤ N ≤ 1,000,000) M이상 N이하의 소수가 하나 이상 있는 입력만 주어진다.

www.acmicpc.net

 

 

 

 

풀이

m, n = map(int, input().split())

for i in range(m, n+1):
    if i == 1:
        continue


    # 소수가 아닌 경우 for문 종료
    for j in range(2, int(i ** 0.5) + 1):
        if(i%j == 0):
            break
            
    else:
        print(i)

1. i가 1인 경우는 소수가 아니므로 제외한다. 

2. 임의의 수 i의 최대 약수가 sqrt(i) 이하이므로 i**0.5 까지만 반복문을 돌린다. 만약 나누어 떨어지는 수가 있으면 반복문을 종료한다. 

3. 반복문에 걸리지 않은, 즉 약수가 없는 수는 그대로 출력한다. 

반응형
Comments