Skip to content
CatBus

Tag: sieve of eratosthenes

All the articles with the tag "sieve of eratosthenes".

BOJ1016GOLD 1
제한
  • 1 ≤ min ≤ 1,000,000,000,000
  • min ≤ max ≤ min + 1,000,000
풀이

2부터 증가하면서 제곱 수의 배수들을 빼주는 식으로 제곱 ㄴㄴ 수를 찾아가는 방식으로 문제를 해결하려 다음과 같이 시도하였다.

첫 시도의 문제점
n, m = map(int, input().split())
sqr = [False] * (m - n + 1)
cnt = 0
for i in range(2, int(m ** 0.5) + 1):
    j = 1
    sqr_num = i ** 2
    while sqr_num * j <= m:
        if sqr_num * j < n: pass
        elif not sqr[sqr_num * j - n]:
            sqr[sqr_num * j - n] = True
            cnt += 1
        j += 1
print((m - n + 1) - cnt)

제곱 ㄴㄴ수

백준 1016번 '제곱 ㄴㄴ수' (골드 1) 문제 풀이. prime number, sieve of eratosthenes 로 접근했다.

2022.12.03·3분·prime number