반응형
문제
https://www.acmicpc.net/problem/1929
M이상 N이하의 소수를 모두 출력하는 프로그램을 작성하시오.
입력
첫째 줄에 자연수 M과 N이 빈 칸을 사이에 두고 주어진다. (1 ≤ M ≤ N ≤ 1,000,000) M이상 N이하의 소수가 하나 이상 있는 입력만 주어진다.
출력
한 줄에 하나씩, 증가하는 순서대로 소수를 출력한다.
코드
import sys
def isPrime(N):
if N==1: return False
for i in range(2,int(N**0.5)+1):
if N % i==0: return False
return True
a,b=map(int, sys.stdin.readline().split())
for i in range(a, b+1):
if isPrime(i)==1:
print(i)
문제 해결
에라토스테네스의 체를 이용하면 더 적은 시간복잡도의 코드로 작성할 수 있지만, 귀하는 단순 소수 판별 함수를 작성하여 코드를 제출했다.
반응형
'Problem Solving > 백준' 카테고리의 다른 글
[백준] 1932번: 정수 삼각형 - [Python/파이썬] (0) | 2023.04.14 |
---|---|
[백준] 1931번: 회의실 배정 - [Python/파이썬] (0) | 2023.04.14 |
[백준] 1924번: 2007년 - [Python/파이썬] (0) | 2023.04.14 |
[백준] 1920번: 수 찾기 - [Python/파이썬] (0) | 2023.04.14 |
[백준] 1912번: 연속합 - [Python/파이썬] (0) | 2023.04.14 |