반응형
import math
b= 12
n = int(math.sqrt(b))+1
print(n)
b= 12
n = int(math.sqrt(b))+1
print(n)
정답: 4
구간에서의 소수 찾기
에라토스테네스의 체를 이용하면 쉽게 구할 수 있습니다.
codeup.kr
import math
a, b = map(int, input().split())
array = [i for i in range(a, b+1)]
array_T = [True for i in range(b+1)] # 처음 모든 수가 소수(True)로 초기화(0, 1 제외)
for i in range(2, int(math.sqrt(b))+1): # 2부터 n의 제곱근까지 모든 수를 확인
# i가 소수인경우(False를 제외하고 남은 수인 경우)
if array_T[i] == True:
# i를 제외한 i의 모든 배수를 지우기
j = 2
while i*j <= b:
array_T[i*j] = False
j+=1
# 모든 소수 출력
for i in range (a, b+1):
if array_T[i]:
print(str(array[i-a]), end=' ')
'코딩테스트 > 파이썬 코딩테스트' 카테고리의 다른 글
사파리월드 (백준 2420번 , 파이썬) (0) | 2023.09.08 |
---|---|
백준 25083번 새싹 (Python, 파이썬) (0) | 2023.09.07 |
백준 10171번 오늘날짜 (Python, 파이썬) (0) | 2023.09.07 |
백준 10699번 오늘날짜 (Python, 파이썬) (0) | 2023.09.07 |
파이썬 라이브러리 (0) | 2023.07.17 |